IF (Exécution de scripts Snowflake)¶
Une instruction IF
permet d’exécuter un ensemble d’instructions si une condition est remplie.
Pour plus d’informations sur les « branching » standard, voir Travailler avec la logique conditionnelle.
Note
Cette construction Exécution de scripts Snowflake n’est valable qu’à l’intérieur d’un bloc Exécution de scripts Snowflake.
Syntaxe¶
IF ( <condition> ) THEN
<statement>;
[ <statement>; ... ]
[
ELSEIF ( <condition> ) THEN
<statement>;
[ <statement>; ... ]
]
[
ELSE
<statement>;
[ <statement>; ... ]
]
END IF;
Où :
condition
Une expression qui est évaluée à un BOOLEAN.
statement
Une instruction peut être l’un des éléments suivants :
Une seule instruction SQL (y compris CALL).
Une instruction de flux de contrôle (par exemple, une instruction de bouclage ou de branchement).
Un bloc imbriqué.
Notes sur l’utilisation¶
Le mot-clé
THEN
est obligatoire.ELSEIF
est un mot (sans espace).END IF
est deux mots.Après chaque clause
THEN
ouELSE
, le corps autorise les mots-clésBEGIN
etEND
, mais ne les exige pas, même si le corps contient plus d’unestatement
.Si la
condition
est NULL, alors elle est traitée comme FALSE.
Exemples¶
Voici un exemple d’une instruction IF
Exécution de scripts Snowflake à l’intérieur d’une procédure stockée :
CREATE OR REPLACE PROCEDURE example_if(flag INTEGER)
RETURNS VARCHAR
LANGUAGE SQL
AS
$$
BEGIN
IF (FLAG = 1) THEN
RETURN 'one';
ELSEIF (FLAG = 2) THEN
RETURN 'two';
ELSE
RETURN 'Unexpected input.';
END IF;
END;
$$
;
Voici la commande pour appeler la procédure stockée, ainsi que le résultat :
CALL example_if(3);
+-------------------+
| EXAMPLE_IF |
|-------------------|
| Unexpected input. |
+-------------------+
Pour d’autres exemples utilisant l’instruction IF
, voir :
Travailler avec la logique conditionnelle - Renvoyez des valeurs différentes en fonction des conditions IF dans un simple bloc anonyme.
Exemples de cas d’utilisation courants d’Exécution de scripts Snowflake - Exécutez les instructions SQL en fonction des conditions IF dans les boucles.
BREAK, LOOP et Travailler avec des boucles - Exécutez les instructions BREAK pour mettre fin à une boucle en fonction des conditions IF.
EXCEPTION - Soulevez des exceptions en fonction des conditions IF.