查看json_path對應的JSON值是否存在。
命令格式
BOOLEAN JSON_EXISTS(<json>, <json_path>)參數說明
參數 | 是否必填 | 說明 |
json | 是 | 待處理的JSON。 |
json_path | 是 | 需要返回的值的JSON路徑。 |
說明
當json_path非法時會報錯,當模式為strict時,如果結構不一致不會報錯,返回false。
傳回值說明
返回BOOLEAN類型的true或者false。
使用樣本
樣本1:從JSON中查詢key為a的value值是否存在。
SELECT JSON_EXISTS(JSON '{"a":1, "b":2}', '$.a');返回結果:
+------+ | _c0 | +------+ | true | +------+樣本2:從JSON中查詢key為c的value值是否存在。
SELECT JSON_EXISTS(JSON '{"a":1, "b":2}', '$.c');返回結果:
+------+ | _c0 | +------+ |false | +------+樣本3:根據下標位置取回對應的values是否存在。
SELECT JSON_EXISTS(JSON '[1,2, {"a":34}]', '$[2].a');返回結果:
+------+ | _c0 | +------+ | true | +------+
相關函數
JSON_EXISTS函數屬於複雜類型函數,更多對複雜類型資料(例如ARRAY、MAP、STRUCT、JSON資料)的處理函數請參見複雜類型函數。