Funkcja try_parse_json
Dotyczy: Databricks SQL Databricks Runtime 15.3 i nowsze
VARIANT
Zwraca wartość z jsonStr
, jeśli to możliwe, lub NULL
jeśli nie jest to możliwe.
Składnia
try_parse_json ( jsonStr )
Argumenty
jsonStr
STRING
: wyrażenie określające dokument JSON.
Zwraca
VARIANT
Wartość reprezentująca równoważne dane jako jsonStr
ciąg JSON.
Jeśli wystąpił błąd podczas analizowania ciągu JSON, wynik to NULL
.
Aby zwrócić błąd zamiast NULL
, użyj funkcji parse_json .
Uwagi
Funkcja to_json konwertuje VARIANT
wartość na STRING value
wartość , więc jest logicznie odwrotna niż parse_json
.
Jednak nie jest to dokładna odwrotność, więc to_json(try_parse_json(jsonStr)) = jsonStr
może nie być prawdziwa.
Biały znak nie jest całkowicie zachowany
{ “a” : 1, “b” : 2 }
jest odpowiednikiem{“a”:1,“b”:2}
Kolejność kluczy może być dowolna
{“a” : 1, “b”: 2}
jest odpowiednikiem{“b”: 2, “a” : 1}
Końcowe zera w liczbach
{“a” : 0.01000}
jest odpowiednikiem{“a” : 0.01}
Przykłady
-- 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