全部產品
Search
文件中心

MaxCompute:JSON_EXTRACT

更新時間:Jun 19, 2024

解析JSON運算式中對應json_path的資料,注意json_path非法時會報錯。

命令格式

json json_extract(<json>, <json_path>)

參數說明

  • json:必填,待處理的JSON。

  • json_path:必填,需要返回的值的JSON路徑。

傳回值說明

返回JSON類型。

使用樣本

  • 樣本1:從JSON中擷取key為a的value值。

    select json_extract(json '{"a":1, "b":2}', '$.a');

    返回結果:

    +-----+
    | _c0 |
    +-----+
    | 1   |
    +-----+
  • 樣本2:當JSON值不存在時,返回NULL。

    select json_extract(json '{"a":1, "b":2}', 'strict $.c');

    返回結果:

    +-----+
    | _c0 |
    +-----+
    | NULL |
    +-----+
  • 樣本3:JSON Path格式非法時,返回報錯資訊Invalid argument - Param json path $invalid_json_path is invalid

    select json_extract(json '{"a":1, "b":2}', '$a');

    返回結果:

    --返回報錯資訊
    Invalid argument - Param json path $invalid_json_path is invalid

相關函數

JSON_EXTRACT函數屬於複雜類型函數,更多對複雜類型資料(例如ARRAY、MAP、STRUCT、JSON資料)的處理函數請參見複雜類型函數