VARIANT
-Typ
Gilt für: Databricks Runtime 15.3 und höher
Stellt halbstrukturierte Daten dar.
Syntax
VARIANT
Grenzwerte
Der Typ unterstützt das Speichern halbstrukturierter Daten, einschließlich STRUCT
, ARRAY
, MAP
und Skalartypen.
VARIANT
kann nur MAP
-Typen mit Schlüsseln vom Typ STRING
speichern.
Literale
Details zum Erstellen eines VARIANT
-Werts finden Sie unterparse_json-Funktion.
Sie können auch die CAST
-Funktion verwenden, um ein Literal eines Typs in VARIANT
zu konvertieren.
Hinweise
- Um einen Wert aus einem
VARIANT
-Typ zu extrahieren, können Sie Folgendes verwenden:- variant_get-Funktion mithilfe eines JSON-Pfadausdrucks, um zu einem komplexen Typ zu navigieren
- :-Operator (Doppelpunkt), um
VARIANT
mithilfe eines JSON-Pfadausdrucks zu parsen - try_variant_get-Funktion mithilfe eines JSON-Pfads, um zu einem komplexen Typ mit Fehlertoleranz zu navigieren
- cast-Funktion oder ::-Operator (Doppel-Doppelpunkt), um
VARIANT
in einen bestimmten Typ umzuwandeln - try_cast-Funktion, um den
VARIANT
-Typ in einen bestimmten Typ mit Fehlertoleranz umzuwandeln
- Um den Typ eines
VARIANT
-Werts zu prüfen, verwenden Sie Folgendes:- schema_of_variant-Funktion für einen einzelnen Wert
- schema_of_variant_agg-Aggregatfunktion für eine Wertsammlung
Beispiele
> 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