SET

SET

세션 변수의 값을 SQL 표현식의 결과로 초기화하는 명령이에요.

출처: 문서

본문

구문 (Syntax)

SET <var> = <expr>

SET ( <var> [ , <var> ... ] )  = ( <expr> [ , <expr> ... ] )

파라미터

  • var — 초기화할 변수의 식별자를 지정해요.
  • expr — 변수의 SQL 표현식을 지정해요.

사용 메모 (Usage notes)

  • 같은 문장에서 여러 변수를 설정할 수 있어요.
  • 복잡한 표현식을 지정하면 세션에서 실행 중인 가상 웨어하우스가 필요할 수 있어요.
  • 표현식의 수는 초기화할 변수의 수와 일치해야 해요.
  • 문자열 또는 이진 변수의 크기는 16KB로 제한돼요.
  • SQL 변수의 식별자(이름)는 256자로 제한돼요.
  • CURRENT 또는 PUBLIC 같은 변수 이름은 Snowflake의 향후 사용을 위해 예약되어 있어 사용할 수 없어요.

예시 (Examples)

이 두 예시는 상수를 사용하여 변수를 설정해요:

SET V1 = 10;

SET V2 = 'example';

이 예시는 한 번에 둘 이상의 변수를 설정해요:

SET (V1, V2) = (10, 'example');

이 예시는 SQL 쿼리를 사용하는 중요하지 않은 표현식의 값으로 변수를 설정해요:

SET id_threshold = (SELECT COUNT(*)/2 FROM table1);

다음 예시는 SET 명령이 할당 연산자 오른쪽의 모든 표현식을 왼쪽의 첫 번째 표현식을 설정하기 전에 평가함을 보여줘요. max라는 변수의 값이 새 값而不是 min의 이전 값을 기반으로 설정됨을 주목하세요:

SET (min, max) = (40, 70);
SET (min, max) = (50, 2 * $min);

SELECT $max;
+------+
| $MAX |
|------|
|   80 |
+------+

더 알아보기 (Learn more)