CONTINUE(Snowflake Scripting)ยถ
CONTINUE
(๋๋ ITERATE
)๋ ๋ฃจํ ๋ฐ๋ณต์์ ๋๋จธ์ง ๋ฌธ์ ๊ฑด๋๋ฐ๊ณ ๋ฃจํ์ ๋ค์ ๋ฐ๋ณต์ ์์ํฉ๋๋ค.
๋ฃจํ์ ํ์ฌ ๋ฐ๋ณต์ ์ข ๋ฃํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ฃจํ๋ฅผ ์ข ๋ฃํ์ง ์๊ณ ๋ฐ๋ณต ์ข ๋ฃํ๊ธฐ ์น์ ์ ์ฐธ์กฐํ์ญ์์ค.
์ฐธ๊ณ
์ด Snowflake Scripting ๊ตฌ๋ฌธ์ Snowflake Scripting ๋ธ๋ก ๋ด์์๋ง ์ ํจํฉ๋๋ค.
- ์ฐธ๊ณ ํญ๋ชฉ:
๊ตฌ๋ฌธยถ
{ CONTINUE | ITERATE } [ <label> ] ;
์ฌ๊ธฐ์:
label
์ ํ์ ๋ ์ด๋ธ์ ๋๋ค. ๋ ์ด๋ธ์ด ์ง์ ๋ ๊ฒฝ์ฐ,
CONTINUE
๋ ๋ ์ด๋ธ์ด ์๋ ๋ฃจํ์ ์ฒซ ๋ฒ์งธ ๋ฌธ์์ ์์ํฉ๋๋ค.์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ค์ฒฉ ๋ฃจํ ๋๋ ์ค์ฒฉ ๋ถ๊ธฐ์์ ๋ ์์ค ์ด์์ ๋ ๋์ ์์ค์ผ๋ก ๊ณ์ํ ์ ์์ต๋๋ค.
์ฌ์ฉ๋ฒ ๋ ธํธยถ
CONTINUE
์ITERATE
๋ ๋์์ด์ ๋๋ค.๋ฃจํ๊ฐ ๋ค๋ฅธ ๋ฃจํ์ ํฌํจ๋ ๊ฒฝ์ฐ,
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;์ฐธ๊ณ : Python Connector ์ฝ๋์์ Snowflake CLI, SnowSQL, Classic Console, ๋๋
execute_stream
๋๋execute_string
๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ด ์์ ๋ฅผ ๋์ ์ฌ์ฉํ์ญ์์ค(Snowflake CLI, SnowSQL, Classic Console ๋ฐ Python Connector์์ 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 |
+-----------------+