json_tuple
funzione generatore di valori di tabella
Si applica a: Databricks SQL
Databricks Runtime
Restituisce oggetti JSON multipli come una tupla.
Sintassi
json_tuple(jsonStr, path1 [, ...] )
Argomenti
-
jsonStr
: un'espressioneSTRING
con JSON ben formato. -
pathN
: valoreSTRING
letterale con un'espressione di percorso JSON.
Valori restituiti
Una singola riga composta dagli oggetti JSON.
Se non è possibile trovare un oggetto, NULL
viene restituito per tale oggetto.
Si applica a:
Databricks Runtime 12.1 e versioni precedenti:
json_tuple
può essere posizionato solo come radice di un'espressione nell'elencoSELECT
o dopo un LATERAL VIEW. Quando si inserisce la funzione nell'elenco diSELECT
, non deve essere presente alcuna altra funzione generatrice nello stesso elenco diSELECT
, altrimenti viene generato l'errore UNSUPPORTED_GENERATOR.MULTI_GENERATOR.Si applica a:
Databricks SQL
Databricks Runtime 12.2 LTS e versioni successive:
L'invocazione dalla clausola LATERAL VIEW o dall'elenco
SELECT
è deprecata. Richiamarejson_tuple
invece come table_reference.
Esempi
Si applica a: Databricks Runtime 12.1 e versioni precedenti:
> SELECT json_tuple('{"a":1, "b":2}', 'a', 'b'), 'Spark SQL';
1 2 Spark SQL
> SELECT json_tuple('{"a":1, "b":2}', 'a', 'c'), 'Spark SQL';
1 NULL Spark SQL
> SELECT json_tuple('{"a":1, "b":2}', 'a', 'c'), json_tuple('{"c":1, "d":2}', 'c', 'd'), 'Spark SQL';
Error: UNSUPPORTED_GENERATOR.MULTI_GENERATOR
Si applica a: Databricks SQL
Databricks Runtime 12.2 LTS e versioni successive:
> SELECT j.*, 'Spark SQL' FROM json_tuple('{"a":1, "b":2}', 'a', 'b') AS j;
1 2 Spark SQL
> SELECT j.*, 'Spark SQL' FROM json_tuple('{"a":1, "b":2}', 'a', 'c') AS j;
1 NULL Spark SQL
> SELECT j1.*, j2.*, 'Spark SQL'
FROM json_tuple('{"a":1, "b":2}', 'a', 'c') AS j1,
json_tuple('{"c":1, "d":2}', 'c', 'd') AS j2;