Delen via


parse_json-functie

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 15.3 en hoger

Retourneert een VARIANT waarde van de jsonStr.

Syntaxis

parse_json ( jsonStr )

Argumenten

  • jsonStr: Een STRING expressie die een JSON-document opgeeft.

Retouren

Een VARIANT waarde die de equivalente gegevens vertegenwoordigt als de jsonStr JSON-tekenreeks.

Als de JSON-tekenreeks ongeldig is, is het resultaat een fout. Gebruik de functie try_parse_json om terug te keren NULL in plaats van een fout.

Opmerkingen

De functie to_json converteert een VARIANT waarde naar een STRING value, dus logisch de inverse van parse_json. Het is echter geen exacte inverse, dus to_json(parse_json(jsonStr)) = jsonStr is mogelijk niet waar.

  • Witruimte is niet perfect bewaard

    { “a” : 1, “b” : 2 } is gelijk aan {“a”:1,“b”:2}

  • Volgorde van sleutels kan willekeurig zijn

    {“a” : 1, “b”: 2} is gelijk aan {“b”: 2, “a” : 1}

  • Volgnullen in getallen

    {“a” : 0.01000} is gelijk aan {“a” : 0.01}

Voorbeelden

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