IF(Snowflake Scripting)

IF 문은 조건이 충족되는 경우 문 세트를 실행하는 방법을 제공합니다.

분기 구문에 대한 자세한 내용은 분기 구문 작업하기 섹션을 참조하십시오.

참고

Snowflake Scripting 구문은 Snowflake Scripting 블록 내에서만 유효합니다.

구문

IF ( <condition> ) THEN
    <statement>;
    [ <statement>; ... ]
[
ELSEIF ( <condition> ) THEN
    <statement>;
    [ <statement>; ... ]
]
[
ELSE
    <statement>;
    [ <statement>; ... ]
]
END IF;
Copy

여기서:

condition

BOOLEAN으로 평가되는 식입니다.

statement

문은 다음 중 하나일 수 있습니다.

  • 단일 SQL 문(CALL 포함).

  • 제어 흐름 문(예: 루핑 또는 분기 문).

  • 중첩 블록.

사용법 노트

  • THEN 키워드는 필수입니다.

  • ELSEIF 는 한 단어(공백 없음)입니다.

  • END IF 는 두 단어입니다.

  • THEN 또는 ELSE 절 뒤에 본문은 BEGINEND 키워드를 허용하지만, 필수인 것은 아닙니다. 본문에 둘 이상의 statement 이 포함된 경우에도 마찬가지입니다.

  • condition 이 NULL이면 FALSE로 처리됩니다.

다음은 저장 프로시저 내의 Snowflake Scripting 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;
$$
;
Copy

다음은 출력과 함께 저장 프로시저를 호출하는 명령입니다.

CALL example_if(3);
+-------------------+
| EXAMPLE_IF        |
|-------------------|
| Unexpected input. |
+-------------------+
Copy