참고
MySQL Documentation 13.6.5.5 LOOP Statement
설명
- 하나 이상의 statement를 반복적으로 실행할 수 있도록 루프구조를 구현하는데 사용
- 각 statement는 세미콜론(;)으로 구분
- 루프 안의 statement는 루프가 종료(LEAVE statement 사용)될 때까지 반복 실행
- stored function에서는 RETURN을 사용할 수 있으며 이때 함수는 종료된다.
- 루프 종료문을 누락하면 무한루프가 발생한다.
- 루프문에 레이블을 지정가능 MySQL Documentation 13.6.2 Statement Labels
syntax
[begin_label:] LOOP
statement_list
END LOOP [end_label]
예시
CREATE PROCEDURE doiterate(p1 INT)
BEGIN
label1: LOOP
SET p1 = p1 + 1;
IF p1 < 10 THEN
ITERATE label1;
END IF;
LEAVE label1;
END LOOP label1;
SET @x = p1;
END;