Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


JSON_CONTAINS_PATH

📄字数 464
👁️阅读量 加载中...

功能描述

搜索json_doc是否在给定的路径下存在数据。

语法格式

sql
JSON_CONTAINS_PATH( json_doc, one_or_all, path[, path]... )

输入参数

  • json_doc:JSON目标文本,JSON类型或字符类型。

  • one_or_allone或者all,字符类型。

    • one:至少有一个path存在数据。
    • all:所有path都存在数据。
  • path: 一个或多个,JSON路径表达式,字符类型。

输出结果

输出结果为 INTEGER 类型,返回 0 或 1 以指示 JSON 文档是否包含给定路径或路径中的数据。如果任意参数为 NULL,则输出结果 NULL

示例

sql
-- 查找路径下是否数据
SQL> SELECT JSON_CONTAINS_PATH('[1, 2, {"x": 3}]', 'all', '$[0]'),
            JSON_CONTAINS_PATH('[1, 2, {"x": 3}]', 'all', '$[3]'),
            JSON_CONTAINS_PATH('[1, 2, {"x": 3}]', 'all', '$[2].x');

+-------+-------+-------+
| EXPR1 | EXPR2 | EXPR3 |
+-------+-------+-------+
| 1     | 0     | 1     |
+-------+-------+-------+

-- one与all对比
SQL> SELECT JSON_CONTAINS_PATH('[1, 2, {"x": 3}]', 'one', '$[0]', '$[3]'),
            JSON_CONTAINS_PATH('[1, 2, {"x": 3}]', 'all', '$[0]', '$[3]');

+-------+-------+
| EXPR1 | EXPR2 |
+-------+-------+
| 1     | 0     |
+-------+-------+