컨텍스트 함수

이 함수 집합을 사용하면 문이 실행되는 컨텍스트에 대한 정보를 수집할 수 있습니다. 이러한 함수는 문당 많아야 한 번만 계산됩니다.

함수 목록

사용법 노트

  • 컨텍스트 함수는 일반적으로 인자가 필요하지 않습니다(SYS_CONTEXT 제외).

  • ANSI 표준을 준수하기 위해 SQL 문에서 다음 컨텍스트 함수를 괄호 없이 호출할 수 있습니다.

    • CURRENT_DATE

    • CURRENT_TIME

    • CURRENT_TIMESTAMP

    • CURRENT_USER

    • LOCALTIME

    • LOCALTIMESTAMP

    참고

    Snowflake Scripting 변수 를 이러한 함수 중 하나를 호출하는 식(예: my_var := <함수_이름>();)으로 설정하는 경우 괄호를 포함해야 합니다.

세션에 대한 현재 웨어하우스, 데이터베이스, 스키마를 표시합니다.

SELECT CURRENT_WAREHOUSE(), CURRENT_DATABASE(), CURRENT_SCHEMA();
+---------------------+--------------------+------------------+
| CURRENT_WAREHOUSE() | CURRENT_DATABASE() | CURRENT_SCHEMA() |
|---------------------+--------------------+------------------+
| MY_WAREHOUSE        | MY_DB              | PUBLIC           |
|---------------------+--------------------+------------------+

현재 날짜, 시간, 타임스탬프를 표시합니다(괄호는 이러한 함수를 호출하는 데 필요하지 않음).

SELECT CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP;
+--------------+--------------+-------------------------------+
| CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP             |
|--------------+--------------+-------------------------------|
| 2024-06-07   | 10:45:15     | 2024-06-07 10:45:15.064 -0700 |
+--------------+--------------+-------------------------------+

Snowflake Scripting 블록에서 괄호 없이 CURRENT_DATE 함수를 호출하여 SQL 문에서 변수를 설정합니다.

EXECUTE IMMEDIATE
$$
DECLARE
  currdate DATE;
BEGIN
  SELECT CURRENT_DATE INTO currdate;
  RETURN currdate;
END;
$$
;
+-----------------+
| anonymous block |
|-----------------|
| 2024-06-07      |
+-----------------+

Snowflake Scripting 블록에서 괄호 없이 CURRENT_DATE 함수를 호출하는 식에 변수를 설정하려고 하면 오류가 발생합니다.

EXECUTE IMMEDIATE
$$
DECLARE
  today DATE;
BEGIN
  today := CURRENT_DATE;
  RETURN today;
END;
$$
;
000904 (42000): SQL compilation error: error line 5 at position 11
invalid identifier 'CURRENT_DATE'

괄호와 함께 이 함수를 호출하면 동일한 블록이 현재 날짜를 반환합니다.

EXECUTE IMMEDIATE
$$
DECLARE
  today DATE;
BEGIN
  today := CURRENT_DATE();
  RETURN today;
END;
$$
;
+-----------------+
| anonymous block |
|-----------------|
| 2024-06-07      |
+-----------------+