跳转到主要内容

distinctJSONPaths

引入版本:v24.9.0 用于计算存储在 JSON 列中的不同路径列表。 语法
distinctJSONPaths(json)
参数
  • json — JSON 列。JSON
返回值 返回已排序的路径列表。Array(String) 示例 嵌套 JSON 的基本用法
Query
DROP TABLE IF EXISTS test_json;
CREATE TABLE test_json(json JSON) ENGINE = Memory;
INSERT INTO test_json VALUES ('{"a" : 42, "b" : "Hello"}'), ('{"b" : [1, 2, 3], "c" : {"d" : {"e" : "2020-01-01"}}}'), ('{"a" : 43, "c" : {"d" : {"f" : [{"g" : 42}]}}}');

SELECT distinctJSONPaths(json) FROM test_json;
Response
┌─distinctJSONPaths(json)───┐
│ ['a','b','c.d.e','c.d.f'] │
└───────────────────────────┘
使用已声明的 JSON 路径
Query
DROP TABLE IF EXISTS test_json;
CREATE TABLE test_json(json JSON) ENGINE = Memory;
INSERT INTO test_json VALUES ('{"a" : 42, "b" : "Hello"}'), ('{"b" : [1, 2, 3], "c" : {"d" : {"e" : "2020-01-01"}}}'), ('{"a" : 43, "c" : {"d" : {"f" : [{"g" : 42}]}}}')

SELECT distinctJSONPaths(json) FROM test_json;
Response
┌─distinctJSONPaths(json)─┐
│ ['a','b','c']           │
└─────────────────────────┘
最后修改于 2026年6月10日