Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunun için geçerlidir:
Databricks SQL
Databricks Runtime 15.3 ve üzeri
Önemli
Bu özellik Genel Önizleme aşamasındadır.
Yarı yapılandırılmış verileri temsil eder.
Uyarı
Iceberg v2 tabloları sütunları desteklemez VARIANT . Apache Iceberg v3 sütunları destekler VARIANT . Bkz. Apache Iceberg v3 özelliklerini kullanma.
Sözdizimi
VARIANT
Sınırlar
Türü, yarı yapılandırılmış verilerin OBJECT, ARRAYve skaler türlerinin depolanmasını destekler.
STRUCT ve MAP depolamak için to_variant_object işlevini kullanın.
MAP anahtarları STRING türünde olmalıdır.
Literal İfadeler
Detaylar için parse_json işlev işlevine bakın ve VARIANT değeri oluşturun.
CAST fonksiyonunu kullanarak bir türdeki değişmez değeri VARIANT'e dönüştürebilirsiniz.
Notlar
-
VARIANT'den bir değer ayıklamak için-
variant_getkarmaşık bir türe gitmek için JSON yol ifadesi kullanan işlev. -
(iki nokta üst üste işareti) işleci
:kullanarakVARIANT'yi bir JSON yol ifadesiyle ayrıştırın. -
try_variant_getişlevi , hata toleransı ile karmaşık bir türe gitmek için bir JSON yolu kullanarak. -
castfonksiyonu veya::(çift nokta işareti) operatörünü kullanarakVARIANTöğesini belirli bir türe dönüştürme. işlevi, belirli bir türe hata toleransıyla dönüştürür.
-
- Bir
VARIANTdeğerin türünü incelemek için-
schema_of_variantbireysel bir değer için işlev. -
schema_of_variant_aggbir değer koleksiyonu için toplama işlevi.
-
Örnekler
> 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" }