JSON_CONTAINS_PATH()¶
简介¶
JSON是否包含给定路径上的数据,TRUE表示存在,FALSE表示不存在
语法¶
JSON_CONTAINS_PATH(json_doc, one_or_all, path[, path] ...)
说明¶
1. 如果任何参数为NULL,则返回NULL。
2. 如果json_doc参数不是一个有效的JSON文档,或路径参数不是一个有效的路径表达式,或one_or_all不是'one'或'all',则会发生错误。
3. 'one':文档至少包含一个给定的路径,返回TRUE,否则返回FALSE。
4. 'all':文档需包含所有给定的路径,才会返回TRUE,否则返回FALSE。
注解
'one'和'all'不区分大小写。
示例¶
-- 任何参数为NULL,返回NULL
-- one_or_all参数为'one'时
SELECT JSON_CONTAINS_PATH('[1,2,3]','one','$[1]','$[2]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
true |
总数目:1
SELECT JSON_CONTAINS_PATH('[1,2,3]','one','$[1]','$[10]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
true |
总数目:1
SELECT JSON_CONTAINS_PATH('[1,2,3]','one','$[10]','$[20]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
false |
总数目:1
-- one_or_all参数为'all'时
SELECT JSON_CONTAINS_PATH('[1,2,3]','all','$[1]','$[2]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
true |
总数目:1
SELECT JSON_CONTAINS_PATH('[1,2,3]','all','$[1]','$[10]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
false |
总数目:1
SELECT JSON_CONTAINS_PATH('[1,2,3]','all','$[10]','$[20]') FROM DUAL;
JSON_CONTAINS_PATH(boolean) |
---------------------------------
false |
总数目:1