Compartir a través de


json_tuple (función de generador con valores de tabla)

Se aplica a: casilla marcada como Sí Databricks SQL casilla marcada como Sí Databricks Runtime

Devuelve varios objetos JSON como tupla.

Sintaxis

json_tuple(jsonStr, path1 [, ...] )

Argumentos

Devoluciones

Una única fila compuesta por los objetos JSON.

Si no se encuentra ningún objeto, se devuelve NULL para ese objeto.

  • Se aplica a: check marked yes Databricks Runtime 12.1 y versiones anteriores:

    json_tuple solo se puede colocar en la lista SELECT como la raíz de una expresión o después de una VISTA LATERAL. Al colocar la función en la lista SELECT, no debe haber ninguna otra función generadora en la misma lista SELECT o se genera UNSUPPORTED_GENERATOR. MULTI_GENERATOR.

  • Se aplica a casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 12.2 LTS y versiones posteriores:

    La invocación de la cláusula LATERAL VIEW o la lista SELECT está en desuso. En su lugar, invoca json_tuple como un table_reference.

Ejemplos

Se aplica a: casilla marcada como sí Databricks Runtime 12.1 y versiones anteriores:

> 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

Se aplica a casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 12.2 LTS y versiones posteriores:

> 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;