CONTINUE(Snowflake Scripting)

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

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

참고

Snowflake Scripting 구문은 Snowflake Scripting 블록 내에서만 유효합니다.

참고 항목

BREAK

구문

{ CONTINUE | ITERATE } [ <label> ] ;
Copy

여기서:

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;
Copy

참고: SnowSQL 또는 Classic Console 을 사용하는 경우 대신 다음 예를 사용하십시오(SnowSQL 및 Classic Console 에서 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;
$$;
Copy

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

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