mysql5.7版本后支持json字段的检索查询。
使用字段->'$.json属性' 进行查询条件
使用 json_extract 函数查询 ,json_extract(字段,"$.json属性")
根据 json数组 查询,JSON_CONTAINS(字段,JSON_OBJECT('json属性', "内容"))
1、使用 字段->'$.json属性'进行查询条件
{"id": 1366,"name": "沈庆林"}
指定查询rectificationParticipant字段中id值为1366的数据:
select * from table_test where rectificationParticipant->'$.id' = '1366'
2、使用json_extract函数查询,json_extract(字段,"$.json属性")
查询条件同上:
select * from table_test where json_extract(rectificationParticipant,"$.id")
3、根据json数组查询,用JSON_CONTAINS(字段,JSON_OBJECT('json属性', "内容"))
例如字段str存储的JSON数组为:
[{"id": 1367, "name": "李加玉"}, {"id": 1366, "name": "沈庆林"}]
查询条件为查询数组中id为1366的数据:
SELECT * FROM `dangerrectification` where JSON_CONTAINS(rectificationParticipant,JSON_OBJECT('id',1366))
3、根据json数组查询,用JSON_CONTAINS(字段,JSON_OBJECT('json属性', "内容"))根据 json数组 查询,JSON_CONTAINS(字段,JSON_OBJECT('json属性', "内容"))使用 json_extract 函数查询 ,json_extract(字段,"$.json属性")2、使用json_extract函数查询,json_extract(字段,"$.json属性")1、使用 字段->'$.json属性'进行查询条件。
如何在
MySQL
中
查询
JSON
数组中
包含某个
值
作为一名经验丰富的开发者,我很高兴能帮助你解决这个问题。在
MySQL
中
查询
JSON
数组中
包含某个
值
是
一个
常见的需求,下面我将为你详细讲解整个过程。
以下是实现这个需求的步骤流程:
一、单个
json
的,获取
值
使用
json
_extract
`select
json
_extract('{"name":"Zhaim","tel":"13240133388"}',"$.tel`");
二、
数组
的
json
的,获取
数组
的长度使用
JSON
_LENGTH
SELECT id,
JSON
_LENGTH('[{"id":"10000004555096","name":"1.docx"},{"id":"10000004555098","name":"2.doc"},{"id":"1000000455509
最近发现
mysql
强大的功能,可以直接
查询
出整个
json
中
具体某个
值
的数据:
json
对应的字段内容是这样的:
msg_content对应的内容就是
json
字段:
"fileName":"测非编1.mp4",
"filePath":"/mnt/windows/folderscan/uploadAndTask/91/测非编1.mp4",
"taskName":"截取首帧失败",
"taskFailStage":"1"
原始数据是这样的:
SELECT
在
SQL
Alchemy
中
使用 函数
查询
MySQL
数组
字段,查找包含特定条件
值
的记录,可以按以下步骤操作:假设你有
一个
MySQL
表 ,其
中
包含
一个
名为 的字段,该字段存储了
一个
JSON
数组
的字符串,你希望
查询
这个
数组
包含特定
值
的记录。首先,确保你已经导入了必要的模块和函数:
导入模块和函数:建立数据库连接和声明基类:定义模型类:构建
查询
:执行
查询
和输出结果:关闭会话:这样,你就可以使用
SQL
Alchemy
查询
包含特定条件
值
的
MySQL
数组
字段的记录了。确保根据你的实际数据库连接配置和数据
qq_27159793: