网站首页 > 精选文章 / 正文
JSON_EXTRACT函数用于从JSON文档中提取一个或多个值。
基本语法
JSON_EXTRACT函数的基本语法如下:
JSON_EXTRACT(json_doc, path [, path] ...)
- json_doc:要从中提取值的JSON文档。
- path:一个或多个路径表达式,用于指定要提取的值的位置。路径表达式以$开头,表示JSON文档的根。路径表达式可以使用点.访问对象属性,使用方括号[]访问数组元素,并且可以组合使用点和方括号访问嵌套结构。
路径表达式
路径表达式使用类似于JavaScript的对象和数组访问语法:
- 对象属性:使用点.访问,例如$.name。
- 数组元素:使用方括号[]访问,例如$。
- 嵌套结构:可以组合使用点和方括号,例如$.address.street或$.items.name
解析json字符串
SELECT JSON_EXTRACT (content, '$.object.item.id') ; -- 1542348252537
SELECT JSON_EXTRACT(JSON_EXTRACT(JSON_EXTRACT (content, '$.object'),'$.item'),'$.id') ; -- 1542348252537
SELECT JSON_EXTRACT (content, '$object$item$id') ; -- ERROR 3143 (42000): Invalid JSON path expression. The error is around character position 1.
SELECT JSON_EXTRACT(JSON_EXTRACT(JSON_EXTRACT (content, '$object'),'$item'),'$id') ; -- ERROR 3143 (42000): Invalid JSON path expression. The error is around character position 1.
解析json数组
SELECT json_extract(json_extract(json_extract(
'{
"object": {
"items": [{
"type": "image",
"id": 1542348252537
},
{
"type": "image",
"id": 1542348263477
}]
}
}'
, '$.object'),'$.items'), '$[0].id'); -- 1542348252537
SELECT json_extract(json_extract(
'{
"object": {
"items": [{
"type": "image",
"id": 1542348252537
},
{
"type": "image",
"id": 1542348263477
}]
}
}'
, '$.object.items'), '$[0].id'); -- 1542348252537
SELECT json_extract(
'{
"object": {
"items": [{
"type": "image",
"id": 1542348252537
},
{
"type": "image",
"id": 1542348263477
}]
}
}'
, '$.object.items.$[0].id'); -- NULL
SELECT json_extract(
'{
"object": {
"items": [{
"type": "image",
"id": 1542348252537
},
{
"type": "image",
"id": 1542348263477
}]
}
}'
, '$.object.items.[0].id'); -- ERROR 3143 (42000): Invalid JSON path expression. The error is around character position 15.
SELECT json_extract(
'{
"object": {
"items": [{
"type": "image",
"id": 1542348252537
},
{
"type": "image",
"id": 1542348263477
}]
}
}'
, '$.object.items[0].id'); -- 1542348252537
end
Tags:jsonpath解析json
猜你喜欢
- 2025-05-08 开源JSON可视神器,让阅读JSON变得简单!-JSONHero
- 2025-05-08 JMeter 断言详解(jmeter做断言)
- 2025-05-08 Python JSON数据处理全攻略:从入门到实战,新手也能轻松掌握!
- 2025-05-08 越晚搞懂 MySQL JSON 数据类型,你就越吃亏
- 2025-05-08 通过 JSON Schema 完成接口自动化测试的数据验证
- 2025-05-08 SpringBoot读取资源目录中的JSON文件方法
- 2025-05-08 真强!使用JSON文件作为Spring Boot配置属性
- 2025-05-08 接口自动化测试之JSON Schema模式该如何使用?
- 2025-05-08 23-Python-第三方库Json(python第三方库有什么)
- 2025-05-08 KingbaseES JSON全解析:记录操作与高级表格处理