Función parse_json
Se aplica a: Databricks SQL Databricks Runtime 15.3 y versiones posteriores
Devuelve un valor de VARIANT
del jsonStr
.
Sintaxis
parse_json ( jsonStr )
Argumentos
jsonStr
: expresiónSTRING
que especifica un documento JSON.
Devoluciones
Valor VARIANT
que representa los datos equivalentes como cadena jsonStr
JSON.
Si la cadena JSON no es válida, el resultado es un error.
Para devolver NULL
en lugar de un error, use la función try_parse_json.
Notas
La función to_json convierte un valor de VARIANT
en un STRING value
, por lo que es lógicamente el inverso de parse_json
.
Sin embargo, no es un inverso exacto, por lo que to_json(parse_json(jsonStr)) = jsonStr
puede que no sea cierto.
El espacio en blanco no se conserva perfectamente
{ “a” : 1, “b” : 2 }
es equivalente a{“a”:1,“b”:2}
La ordenación de claves puede ser arbitraria
{“a” : 1, “b”: 2}
es equivalente a{“b”: 2, “a” : 1}
Ceros finales en números
{“a” : 0.01000}
equivale a{“a” : 0.01}
.
Ejemplos
-- Simple example
> SELECT parse_json('{"key": 123, "data": [4, 5, "str"]}');
{"data":[4,5,"str"],"key":123}
-- Parsing a scalar value
> SELECT parse_json('123');
123
-- invalid JSON string
> SELECT parse_json('{ bad }');
[MALFORMED_RECORD_IN_PARSING.WITHOUT_SUGGESTION] Malformed records are detected in record parsing: { bad }.