다음에 적용됨:
Databricks SQL
Databricks Runtime 15.3 이상
반구조화된 데이터를 나타냅니다.
비고
Iceberg v2 테이블은 VARIANT 열을 지원하지 않습니다. Apache Iceberg v3는 VARIANT 열을 지원합니다.
Apache Iceberg v3 기능 사용을 참조하세요.
구문
VARIANT
제한
이 형식은 반구조화된 데이터 OBJECTARRAY및 스칼라 형식 저장을 지원합니다.
STRUCT 및 MAP을 저장하려면 to_variant_object 함수를 사용하십시오.
MAP 키는 형식 STRING이어야 합니다.
리터럴 (프로그래밍 등에서 사용하는 정해진 값)
parse_json 값을 만드는 방법에 대한 자세한 내용은 함수를 참조하세요.
CAST 함수를 사용하여 특정 유형의 리터럴을 VARIANT로 변환할 수도 있습니다.
노트
-
VARIANT에서 값을 추출하려면 사용할 수 있습니다.-
variant_get함수는 복합 형식으로 이동하는 JSON 경로 식 사용하여. -
:. -
try_variant_get함수는 JSON 경로를 사용하여 오류 관용이 있는 복합 형식으로 탐색하는. -
cast함수 또는::. -
try_cast기능입니다.
-
-
VARIANT값의 형식을 검사하려면 사용하십시오.- 개별 값에 대한
schema_of_variant함수. - 값 컬렉션에 대한 집계 함수
schema_of_variant_agg.
- 개별 값에 대한
예제
> SELECT parse_json('{"key": 123, "data": [4, 5, "str"]}');
{"data":[4,5,"str"],"key":123}
> SELECT parse_json(null);
null
> SELECT parse_json('123');
123
> SELECT CAST(123.456 AS VARIANT);
123.456
> SELECT to_variant_object(map('key', 'val'));
{ "key": "val" }
> SELECT to_variant_object(struct('field', 'val'));
{ "field": "val" }