schema_of_variant_agg
funzione di aggregazione
Si applica a: Databricks SQL Databricks Runtime 15.3 e versioni successive
Restituisce lo schema combinato di tutti i valori VARIANT
in un gruppo in formato DDL.
Sintassi
schema_of_variant_agg ( variantExpr ) [FILTER ( WHERE cond ) ]
Argomenti
variantExpr
: un’espressioneVARIANT
.cond
: espressione facoltativaBOOLEAN
che filtra le righe usate per l'aggregazione.
Valori restituiti
Oggetto STRING
contenente una definizione dello schema dell'oggetto variantExpr
.
I tipi nello schema sono i tipi SQL formattati derivati.
Lo schema di ogni VARIANT
valore viene unito in base al nome del campo. Quando due campi con lo stesso nome hanno un tipo diverso tra record, Azure Databricks usa il tipo meno comune.
Quando non esiste alcun tipo di questo tipo, il tipo viene derivato come .VARIANT
Ad esempio, INT
e DOUBLE
diventano DOUBLE
, mentre TIMESTAMP
e STRING
diventano VARIANT
.
Per derivare lo schema di un singolo VARIANT
valore, usare schema_of_variant funzione.
Esempi
-- Simple example
> SELECT schema_of_variant_agg(a) FROM VALUES(parse_json('{"foo": "bar"}')) AS data(a);
OBJECT<foo: STRING>
> SELECT schema_of_variant_agg(a) FROM VALUES(parse_json('[1]')) AS data(a);
ARRAY<BIGINT>
> CREATE TEMPORARY VIEW data(a) AS VALUES
(parse_json('{"foo": "bar", "wing": {"ding": "dong"}}')),
(parse_json('{"wing": 123}'));
> SELECT schema_of_variant_agg(a) FROM data;
OBJECT<foo: STRING, wing: VARIANT>