Partager via


Fonction try_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 du jsonStr, le cas échéant, ou NULL si ce n’est pas possible.

Syntaxe

try_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. En cas d’erreur lors de l’analyse de la chaîne JSON, le résultat est NULL.

Pour retourner une erreur au lieu de NULL, utilisez la fonction 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(try_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 try_parse_json('{"key": 123, "data": [4, 5, "str"]}');
  {"data":[4,5,"str"],"key":123}

-- Parsing a scalar value
> SELECT try_parse_json('123');
  123

-- invalid JSON string
> SELECT try_parse_json('{ bad }');
  NULL