Tipo diVARIANT
Si applica a: Databricks Runtime 15.3 e versioni successive
Rappresenta dati semistrutturati.
Sintassi
VARIANT
Limiti
Il tipo supporta l'archiviazione di tutti i dati semistrutturati, inclusi STRUCT
i tipi scalari , ARRAY
MAP
, e .
VARIANT
può archiviare MAP
solo i tipi con chiavi di tipo STRING
.
Valori letterali
Per informazioni dettagliate sulla creazione di un VARIANT
valore, vedere parse_json funzione di funzione.
È anche possibile usare la CAST
funzione per convertire un valore letterale di un tipo in VARIANT
.
Note
- Per estrarre un valore da un
VARIANT
oggetto è possibile usare- variant_get funzione usando un'espressione di percorso JSON per spostarsi in un tipo complesso.
- : operatore (segno di due punti) per analizzare l'oggetto usando un'espressione
VARIANT
di percorso JSON. - try_variant_get funzione usando un percorso JSON per spostarsi in un tipo complesso con tolleranza di errore.
- Operatore cast function o :: (segno due punti) per eseguire il cast di
VARIANT
a un tipo specifico. - try_cast funzione per eseguire il cast di
VARIANT
a un tipo specifico con tolleranza di errore.
- Per controllare il tipo di un
VARIANT
valore, usare- schema_of_variant funzione per un singolo valore.
- schema_of_variant_agg funzione di aggregazione per una raccolta di valori.
Esempi
> 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