다음에 적용됨:
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" }