Partager via


Fonction parse_json

S’applique à : coche pour oui Databricks SQL coche marquée oui Databricks Runtime 15.3 et versions ultérieures

Retourne une valeur VARIANT à partir de jsonStr.

Syntaxe

parse_json ( jsonStr )

Arguments

  • jsonStr : une expression STRING spécifiant un document JSON.

Retours

Une valeur VARIANT qui représente les données équivalentes en tant que chaîne JSON jsonStr.

Si la chaîne JSON n’est pas valide, le résultat est une erreur. Pour retourner NULL au lieu d’une erreur, utilisez la fonction try_parse_json.

Notes

La fonction to_json convertit une valeur VARIANT en un STRING value, de sorte qu’elle est logiquement l’inverse de parse_json. Toutefois, elle n’est pas l’inverse exact. Par conséquent, il est possible que to_json(parse_json(jsonStr)) = jsonStr ne soit pas vrai.

  • L’espace blanc n’est pas parfaitement conservé

    { “a” : 1, “b” : 2 } équivaut à {“a”:1,“b”:2}

  • L’ordre des clés peut être arbitraire

    {“a” : 1, “b”: 2} équivaut à {“b”: 2, “a” : 1}

  • Zéros de fin dans les nombres

    {“a” : 0.01000} équivaut à {“a” : 0.01}

Exemples

-- 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 }.