使用JSON_VALUE函数,从JSON字符串中提取指定路径的表达式。
使用限制
仅实时计算引擎VVR 3.0.0及以上版本支持JSON_VALUE函数。
语法
VARCHAR JSON_VALUE(VARCHAR content, VARCHAR path)
入参
参数 | 数据类型 | 说明 |
content | VARCHAR | 需要解析的JSON对象。 |
path | VARCHAR | 指定路径表达式。自定义路径需要使用单引号('),示例如下。
目前路径支持的符号及功能如下:
|
说明
如果入参中有不合法的JSON和NULL,则返回为NULL。
示例
测试数据
表 1. T1 id(INT)
json(VARCHAR)
path1(VARCHAR)
1
[10, 20, [30, 40]]
$[2][*]
2
{"aaa":"bbb","ccc":{"ddd":"eee","fff":"ggg","hhh":["h0","h1","h2"]},"iii":"jjj"}
$.ccc.hhh[*]
3
{"aaa":"bbb","ccc":{"ddd":"eee","fff":"ggg","hhh":["h0","h1","h2"]},"iii":"jjj"}
$.ccc.hhh[1]
4
[10, 20, [30, 40]]
NULL
5
NULL
$[2][*]
6
"{xx]"
"$[2][*]"
测试语句
SELECT id, JSON_VALUE(json, path1) AS `value` FROM T1;
测试结果
id (INT)
value (VARCHAR)
1
[30,40]
2
["h0","h1","h2"]
3
h1
4
NULL
5
NULL
6
NULL
相关文档
更多支持的内置函数,详情请参见支持的函数。
使用自定义函数(UDF),详情请参见自定义函数和管理自定义函数(UDF)。