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 :