Fonction parse_json
S’applique à : Databricks SQL Databricks Runtime 15.3 et versions ultérieures
Retourne une valeur VARIANT
à partir de jsonStr
.
Syntaxe
parse_json ( jsonStr )
Arguments
jsonStr
: une expressionSTRING
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 }.