VARIANT
type
Van toepassing op: Databricks Runtime 15.3 en hoger
Vertegenwoordigt semi-gestructureerde gegevens.
Syntaxis
VARIANT
Limieten
Het type ondersteunt het opslaan van semi-gestructureerde gegevens, waaronder STRUCT
, ARRAY
en MAP
scalaire typen.
VARIANT
kan alleen typen opslaan MAP
met sleutels van het type STRING
.
Letterlijke waarden
Zie parse_json functiefunctie voor meer informatie over het maken van een VARIANT
waarde.
U kunt de CAST
functie ook gebruiken om een letterlijke tekst van een bepaald type te converteren naar VARIANT
.
Opmerkingen
- Als u een waarde wilt extraheren uit een
VARIANT
waarde, kunt u de- variant_get functie met behulp van een JSON-padexpressie om naar een complex type te navigeren.
- : (dubbele puntteken) om het
VARIANT
gebruik van een JSON-padexpressie te parseren. - try_variant_get functie met behulp van een JSON-pad om naar een complex type te navigeren met fouttolerantie.
- cast-functie of :: (dubbele puntteken) om de
VARIANT
te casten naar een specifiek type. - try_cast functie om het
VARIANT
naar een specifiek type te casten met fouttolerantie.
- Als u het type van een
VARIANT
waarde wilt controleren, gebruikt u de- schema_of_variant functie voor een afzonderlijke waarde.
- schema_of_variant_agg statistische functie voor een verzameling waarden.
Voorbeelden
> 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