BREAK (Exécution de scripts Snowflake)¶
BREAK
(ou EXIT
) termine une boucle.
Pour plus d’informations sur la terminaison des boucles, voir Terminer une boucle.
Note
Cette construction Exécution de scripts Snowflake n’est valable qu’à l’intérieur d’un bloc Exécution de scripts Snowflake.
- Voir aussi:
Syntaxe¶
{ BREAK | EXIT } [ <label> ] ;
Où :
label
Une étiquette facultative. Si l’étiquette est spécifiée, le
BREAK
passera à l’instruction qui suit immédiatement l’étiquette.Vous pouvez l’utiliser pour sortir de plus d’un niveau d’une boucle imbriquée ou d’une branche imbriquée.
Notes sur l’utilisation¶
BREAK
etEXIT
sont synonymes.Si la boucle est intégrée dans une ou plusieurs autres boucles, vous pouvez sortir non seulement de la boucle actuelle, mais aussi d’une boucle englobante, en incluant l’étiquette de la boucle englobante dans le
BREAK
. Pour un exemple, voir la section Exemples ci-dessous.
Exemples¶
Voici un exemple d’utilisation de BREAK pour sortir non seulement de la boucle actuelle, mais aussi d’une boucle englobante :
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;Remarque : si vous utilisez SnowSQL ou l”Classic Console, utilisez cet exemple à la place (voir Utilisation d’Exécution de scripts Snowflake dans SnowSQL et l”Classic Console) :
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; $$;
Voici la sortie :
+-----------------+ | anonymous block | |-----------------| | 1 | +-----------------+