Función parse_json

Se aplica a:marcado como sí Databricks SQL marcado como sí Databricks Runtime 15.3 y versiones posteriores

Devuelve un valor de VARIANT del jsonStr.

Sintaxis

parse_json ( jsonStr )

Argumentos

  • jsonStr: expresión STRING 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, Azure Databricks genera MALFORMED_RECORD_IN_PARSING. Para devolver NULL en lugar de un error, use la función try_parse_json .

Condiciones de error comunes

Notas

La función to_json convierte un VARIANT valor en , STRING valuepor 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} es equivalente 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 }');
  Error: MALFORMED_RECORD_IN_PARSING