13.6.5.5 LOOP 구문
[ begin_label
:] LOOP statement_list
END LOOP [ end_label
]
LOOP
는 간단한 루프 구조 구문을 구현하고 각각 세미콜론 ( ;
) 문 구분자로 끝나는 하나 이상의 문으로 구성된 문 목록의 반복을 가능하게합니다. 루프의 각 문은 루프가 종료 될 때까지 반복됩니다. 일반적으로 LEAVE
문에서 실행됩니다. 스토어드 함수 내에서 RETURN
도 사용할 수 있습니다. 이렇게하면 해당 스토어드 함수가 완전히 종료합니다.
루프 종료 문이 포함되어 있지 않으면 무한 루프가 발생합니다.
LOOP
명령문은 레이블을 지정할 수 있습니다. 라벨의 사용과 관련된 규칙 내용은 섹션 13.6.2 "문 레이블 구문" 을 참조하십시오.
예 :
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;