BREAK (Script Snowflake)¶
BREAK
(ou EXIT
) encerra um loop.
Para obter mais informações sobre os loops de encerramento, consulte Encerramento de um loop.
Nota
Este constructo do Script Snowflake só é válido dentro de um bloco do Script Snowflake.
- Consulte também:
Sintaxe¶
{ BREAK | EXIT } [ <label> ] ;
Onde:
label
Uma tag opcional. Se a tag for especificada, o
BREAK
saltará para a instrução imediatamente após a tag.Você pode usar isso para sair de mais de um nível de um loop aninhado ou de um ramo aninhado.
Notas de uso¶
BREAK
eEXIT
são sinônimos.Se o loop fizer parte de um outro(s) loop(s), você pode sair não apenas do loop atual, mas também de um loop envolvente, incluindo a tag do loop envolvente como parte do
BREAK
. Para obter um exemplo, consulte a seção exemplos abaixo.
Exemplos¶
Aqui está um exemplo de como usar BREAK para sair não apenas do loop atual, mas também de um loop de delimitação:
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;
Observação: se você usar o Snowflake CLI, SnowSQL, o Classic Console, ou o método execute_stream
ou execute_string
no código Python Connector, use este exemplo (consulte Usar o Snowflake Scripting no Snowflake CLI, SnowSQL, Classic Console e Python Connector):
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 |
+-----------------+