跳到主要内容

JSON_PATH_EXISTS

引入或更新于:v1.2.119

检查 JSON 数据中是否存在指定的路径 (path)。

语法

JSON_PATH_EXISTS(<json_data>, <json_path_expression>)
  • json_data:指定要搜索的 JSON 数据。它可以是 JSON 对象或数组。

  • json_path_expression:指定要在 JSON 数据中检查的路径,该路径从表示 JSON 数据根节点 (root) 的 $ 开始。你还可以在表达式中包含条件,使用 @ 来引用当前正在评估的节点 (node) 或元素 (element),以筛选结果。

返回类型

该函数返回:

  • 如果指定的 JSON 路径(以及任何条件)存在于 JSON 数据中,则返回 true
  • 如果指定的 JSON 路径(以及任何条件)不存在于 JSON 数据中,则返回 false
  • 如果 json_data 或 json_path_expression 为 NULL 或无效,则返回 NULL。

示例

SELECT JSON_PATH_EXISTS(parse_json('{"a": 1, "b": 2}'), '$.a ? (@ == 1)');

----
true


SELECT JSON_PATH_EXISTS(parse_json('{"a": 1, "b": 2}'), '$.a ? (@ > 1)');

----
false

SELECT JSON_PATH_EXISTS(NULL, '$.a');

----
NULL

SELECT JSON_PATH_EXISTS(parse_json('{"a": 1, "b": 2}'), NULL);

----
NULL
开始使用 Databend Cloud
低成本
快速分析
多种数据源
弹性扩展
注册