IF (Snowflakeスクリプト)¶
IF
ステートメントは、条件が満たされた場合にステートメントのセットを実行する方法を提供します。
分岐構造の詳細については、 分岐構造の操作 をご参照ください。
注釈
この Snowflakeスクリプト 構造は、 Snowflakeスクリプトブロック 内でのみ有効です。
構文¶
IF ( <condition> ) THEN
<statement>;
[ <statement>; ... ]
[
ELSEIF ( <condition> ) THEN
<statement>;
[ <statement>; ... ]
]
[
ELSE
<statement>;
[ <statement>; ... ]
]
END IF;
条件:
使用上の注意¶
キーワード
THEN
は必須です。ELSEIF
は、1つの単語です(スペースなし)。END IF
は、2つの単語です。各
THEN
またはELSE
句の後で、本文はBEGIN
およびEND
キーワードを許可しますが、本文に複数のstatement
が含まれている場合でも、それらは必須ではありません。condition
が NULL の場合は、 FALSE として扱われます。
例¶
ストアドプロシージャ内のSnowflakeスクリプト IF
ステートメントの例を次に示します。
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;
$$
;
次に、ストアドプロシージャを呼び出すコマンドと出力を示します。
CALL example_if(3);
+-------------------+
| EXAMPLE_IF |
|-------------------|
| Unexpected input. |
+-------------------+