共用方式為


parse_json函式

適用於: 核取記號為「是」 Databricks SQL 核取記號為「是」 Databricks Runtime 15.3 和更新版本

jsonStr 傳回 VARIANT 值。

語法

parse_json ( jsonStr )

引數

  • jsonStrSTRING:指定 JSON 檔案的運算式。

傳回

VARIANT值,表示作為 JSON 字串的jsonStr對等數據。

如果 JSON 字串無效,則結果是錯誤。 若要傳回 NULL 而不是錯誤,請使用 try_parse_json 函式。

備註

to_json函 會將 VARIANTSTRING value轉換成 ,因此其邏輯上是的 parse_json反函數。 不過,這不是完全相反的,所以to_json(parse_json(jsonStr)) = jsonStr可能不是真的。

  • 空格符未完全保留

    { “a” : 1, “b” : 2 } 相當於 {“a”:1,“b”:2}

  • 索引鍵的排序可以是任意的

    {“a” : 1, “b”: 2} 相當於 {“b”: 2, “a” : 1}

  • 數位的尾端零

    {“a” : 0.01000} 相當於 {“a” : 0.01}

範例

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