BREAK(Snowflake Scripting)¶
BREAK
(또는 EXIT
)는 루프를 종료합니다.
루프 종료에 대한 자세한 내용은 루프 종료하기 섹션을 참조하십시오.
참고
이 Snowflake Scripting 구문은 Snowflake Scripting 블록 내에서만 유효합니다.
- 참고 항목:
구문¶
{ BREAK | EXIT } [ <label> ] ;
여기서:
label
선택적 레이블입니다. 레이블이 지정된 경우
BREAK
는 레이블 바로 뒤에 있는 문으로 이동합니다.이를 사용하여 중첩 루프 또는 중첩 분기의 둘 이상의 수준에서 벗어날 수 있습니다.
사용법 노트¶
BREAK
와EXIT
는 동의어입니다.루프가 다른 루프에 포함된 경우,
BREAK
의 일부로서 둘러싸는 루프의 레이블을 포함함으로써 현재 루프뿐 아니라 둘러싸는 루프에서도 나갈 수 있습니다. 예를 보려면 아래의 예 섹션을 참조하십시오.
예¶
다음은 BREAK 를 사용하여 현재 루프뿐만 아니라 둘러싸는 루프를 종료하는 예입니다.
DECLARE i INTEGER; j INTEGER; BEGIN i := 1; j := 1; WHILE (i <= 4) DO WHILE (j <= 4) DO -- Exit when j is 3, even if i is still 1. IF (j = 3) THEN BREAK outer_loop; END IF; j := j + 1; END WHILE inner_loop; i := i + 1; END WHILE outer_loop; -- Execution resumes here after the BREAK executes. RETURN i; END;참고: SnowSQL 또는 Classic Console 을 사용하는 경우 대신 다음 예를 사용하십시오(SnowSQL 및 Classic Console 에서 Snowflake Scripting 사용하기 참조).
EXECUTE IMMEDIATE $$ DECLARE i INTEGER; j INTEGER; BEGIN i := 1; j := 1; WHILE (i <= 4) DO WHILE (j <= 4) DO -- Exit when j is 3, even if i is still 1. IF (j = 3) THEN BREAK outer_loop; END IF; j := j + 1; END WHILE inner_loop; i := i + 1; END WHILE outer_loop; -- Execution resumes here after the BREAK executes. RETURN i; END; $$;
출력은 다음과 같습니다.
+-----------------+ | anonymous block | |-----------------| | 1 | +-----------------+