json_tuple
Funzione generatore con valori di tabella
Si applica a: Databricks SQL Databricks Runtime
Restituisce più oggetti JSON come tupla.
Sintassi
json_tuple(jsonStr, path1 [, ...] )
Argomenti
jsonStr
STRING
: espressione 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 inserito nell'elencoSELECT
solo come radice di un'espressione o dopo una VISUALIZZAZIONE LATERALE. Quando si inserisce la funzione nell'elencoSELECT
non deve essere presente alcuna altra funzione generatore nello stessoSELECT
elenco o UNSUPPORTED_GENERATOR. MULTI_GENERATOR viene generato.Si applica a: Databricks SQL Databricks Runtime 12.2 LTS e versioni successive:
La chiamata 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;