Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Función
Se aplica a:
Databricks SQL
Databricks Runtime
Extrae un objeto JSON de path.
Tip
Para el nuevo código, Azure Databricks recomienda usar el tipo de datos VARIANT con el operador : para consultar datos JSON.
VARIANT ofrece un mejor rendimiento de lectura y escritura, acceso a campos con distinción entre mayúsculas y minúsculas y semántica más clara que el análisis json basado en cadenas. Consulte ¿Cómo es la variante diferente de las cadenas JSON?.
Sintaxis
get_json_object(expr, path)
Argumentos
-
expr: expresión de cadena que contiene JSON correcto. -
path: un literal STRING que contiene una expresión JSONPath raíz en$. Consulte Notas sobre la sintaxis admitida y ejemplos para patrones comunes.
Devoluciones
Un valor STRING.
Si no se encuentra el objeto, se devuelve el valor NULL.
Ejemplos
-- Extract a top-level field
> SELECT get_json_object('{"a":"b"}', '$.a');
b
-- Extract a nested field
> SELECT get_json_object('{"a":{"b":"c"}}', '$.a.b');
c
-- Extract an array element by index
> SELECT get_json_object('{"items":["apple","pear"]}', '$.items[0]');
apple
-- Extract a field whose name contains a space
> SELECT get_json_object('{"first name":"Ada"}', '$["first name"]');
Ada
-- Extract a field whose name contains a dot, using bracket notation with double quotes
> SELECT get_json_object('{"ids":{"a.b":"42"}}', '$.ids["a.b"]');
42
-- Extract a field from every element of an array
> SELECT get_json_object('{"items":[{"n":1},{"n":2}]}', '$.items[*].n');
[1,2]
-- Returns NULL when the path does not match
> SELECT get_json_object('{"a":"b"}', '$.missing');
NULL
Notas
get_json_object usa la sintaxis jsonPath rootada en $. El acceso de campo por notación de puntos (.field) no distingue mayúsculas de minúsculas; la notación de corchetes (['field'] o ["field"]) distingue mayúsculas de minúsculas. Esto difiere de la expresión de ruta de acceso Azure Databricks JSON usada con el operador : para consultar VARIANT y cadenas JSON, que se documentan por separado.