JSON_EXTRACT函數用於提取JSON類型資料中指定json_path的資料。
命令格式
JSON JSON_EXTRACT(JSON <json_expr>, STRING <json_path>)
-- 標準樣本。
-- 返回1。
SELECT JSON_EXTRACT(JSON '{"a":1, "b":2}', '$.a');參數說明
json_expr:必填。待處理的JSON類型資料。JSON類型。
json_path:必填。需要返回的值的JSON路徑。STRING類型。
傳回值說明
返回JSON類型。返回規則如下:
若json_path無效,返回NULL。
若json_path非法,返回報錯。
使用樣本
樣本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}', '$.c');返回結果:
+-----+ | _c0 | +-----+ | NULL | +-----+樣本3:JSON Path格式非法,返回報錯資訊。
SELECT JSON_EXTRACT(JSON '{"a":1, "b":2}', '$a');返回結果:
Invalid argument - Param json path $invalid_json_path is invalid
相關函數
JSON_EXTRACT函數屬於JSON函數,更多JSON類型函數請參見JSON函數。