LEAVE
LEAVE (블록 종료)
SQL 사용자 정의 함수에서 지정된 컨텍스트 블록 밖으로 처리를 이동시키는 문법이에요. 반복문을 중간에 빠져나올 때 사용해요.
출처: 문서
본문
LEAVE 문은 SQL 사용자 정의 함수에서 블록 처리를 지정된 컨텍스트 밖으로 이동시킬 수 있게 해요. 컨텍스트는 레이블로 정의돼요. 레이블을 찾지 못하면 함수는 오류 메시지와 함께 실패해요.
시그니처
LEAVE label
예시
다음 함수는 top이라는 레이블이 붙은 LOOP를 포함해요. 루프 안의 조건부 IF 문은 매개변수 p의 값이 1 이하일 때 루프 처리를 종료시킬 수 있어요. 값이 1 이하로 전달됐거나 루프를 여러 번 반복한 후에 그럴 수 있어요.
FUNCTION my_pow(n int, p int)
RETURNS int
BEGIN
DECLARE r int DEFAULT n;
top: LOOP
IF p <= 1 THEN
LEAVE top;
END IF;
SET r = r * n;
SET p = p - 1;
END LOOP;
RETURN r;
END
LEAVE 문을 다른 문과 결합해 사용하는 다양한 복잡도의 추가 예시는 예시 SQL UDF 문서에서 확인할 수 있어요.
더 알아보기 (Learn more)
블록 시작으로 되돌아가는 반대 동작은 ITERATE에서 다루고, SQL UDF 전반은 SQL 사용자 정의 함수 문서를 참고해요.