JSON_EXTRACT
📄字数 396
👁️阅读量 加载中...
功能描述
返回JSON文本指定路径的值。
语法格式
sql
JSON_EXTRACT( json_doc, path[, path]... )输入参数
json_doc:JSON文本,JSON类型或字符类型。path:一个或多个路径表达式,字符类型。
输出结果
JSON类型。
提示
多个路径返回值合并为JSON数组。
执行类型
| TYPE | VALUE | 说明 |
|---|---|---|
| NATIVE | 0 | 函数只能在本地计算 |
| VOLATI | 0 | 函数的每次计算值不同 |
| STABLE | 0 | 函数的每次计算值相同 |
| COMPUTE | 0 | 函数支持预计算取值 |
| NOT_CONST | 0 | 函数不支持转常数 |
| HAVE_DEF | 0 | 函数参数有默认值 |
示例
sql
-- 从数组中提取一个元素
SQL> SELECT JSON_EXTRACT('[1, 2, {"x": 3}]', '$[2]');
+----------+
| EXPR1 |
+----------+
| {"x": 3} |
+----------+
-- 从对象中提取一个节点的值
SQL> SELECT JSON_EXTRACT('{"x": 1, "y": [1, 2]}', '$.y');
+--------+
| EXPR1 |
+--------+
| [1, 2] |
+--------+
-- 提取所有的节点的值
SQL> SELECT JSON_EXTRACT('{"a": 1, "b": 2, "c": [3, 4, 5]}', '$.*');
+-------------------+
| EXPR1 |
+-------------------+
| [1, 2, [3, 4, 5]] |
+-------------------+