json_tuple
funkcja generatora wartości tabeli
Dotyczy: Databricks SQL
Databricks Runtime
Zwraca wiele obiektów JSON jako krotkę.
Składnia
json_tuple(jsonStr, path1 [, ...] )
Argumenty
-
jsonStr
STRING
: Wyrażenie z dobrze sformułowanym kodem JSON. -
pathN
STRING
: literał z wyrażeniem ścieżki JSON.
Zwraca
Pojedynczy wiersz składający się z obiektów JSON.
Jeśli nie można odnaleźć żadnego obiektu, NULL
zostanie zwrócony dla tego obiektu.
Dotyczy:
Databricks Runtime 12.1 i starsze:
json_tuple
można umieścić tylko na liścieSELECT
jako korzeń wyrażenia lub po LATERAL VIEW. Podczas umieszczania funkcji naSELECT
liście nie może istnieć żadna inna funkcja generatora na tej samejSELECT
liście lub UNSUPPORTED_GENERATOR. MULTI_GENERATOR jest podniesiona .Dotyczy:
Databricks SQL
Databricks Runtime 12.2 LTS i nowsze:
Wywołanie z klauzuli ,LATERAL VIEW lub albo listy
SELECT
jest przestarzałe. Zamiast tego należy wywołaćjson_tuple
jako table_reference.
Przykłady
Dotyczy: Databricks Runtime 12.1 i starsze:
> 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
Dotyczy: Databricks SQL
Databricks Runtime 12.2 LTS i nowsze:
> 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;