CONTINUE

CONTINUE (또는 ITERATE)는 루프 반복에서 나머지 문을 건너뛰고 루프의 다음 반복을 시작합니다.

루프의 현재 반복을 종료하는 방법에 대한 자세한 내용은 루프를 종료하지 않고 반복 종료하기 섹션을 참조하십시오.

참고 항목

BREAK

구문

{ CONTINUE | ITERATE } [ <label> ] ;

여기서:

label

선택적 레이블입니다. 레이블이 지정된 경우, CONTINUE 는 레이블이 있는 루프의 첫 번째 문에서 시작합니다.

이를 사용하여 중첩 루프 또는 중첩 분기에서 두 수준 이상의 더 높은 수준으로 계속할 수 있습니다.

사용법 노트

  • CONTINUEITERATE 는 동의어입니다.

  • 루프가 다른 루프에 포함된 경우, CONTINUE 의 일부로서 둘러싸는 루프의 레이블을 포함함으로써 현재 루프에서 벗어날 수 있을 뿐만 아니라 둘러싸는 루프의 첫 번째 문에서 시작할 수 있습니다. 예를 보려면 아래의 예 섹션을 참조하십시오.

다음 루프는 3번 반복됩니다. CONTINUE 문 뒤의 코드는 실행되지 않기 때문에 counter2 라는 변수는 3이 아닌 0이 됩니다.

DECLARE
  counter1 NUMBER(8, 0);
  counter2 NUMBER(8, 0);
BEGIN
  counter1 := 0;
  counter2 := 0;
  WHILE (counter1 < 3) DO
    counter1 := counter1 + 1;
    CONTINUE;
    counter2 := counter2 + 1;
  END WHILE;
  RETURN counter2;
END;

참고: SnowSQL 또는 클래식 웹 인터페이스 를 사용하는 경우 대신 다음 예를 사용하십시오(SnowSQL 및 클래식 웹 인터페이스에서 Snowflake Scripting 사용하기 참조).

EXECUTE IMMEDIATE $$
DECLARE
    counter1 NUMBER(8, 0);
    counter2 NUMBER(8, 0);
BEGIN
    counter1 := 0;
    counter2 := 0;
    WHILE (counter1 < 3) DO
        counter1 := counter1 + 1;
        CONTINUE;
        counter2 := counter2 + 1;
    END WHILE;
    RETURN counter2;
END;
$$;

다음은 예를 실행한 결과입니다.

+-----------------+
| anonymous block |
|-----------------|
|               0 |
+-----------------+