如何使用 AND 在 MYSQL 中查询 JSON 数组

yka*_*ica 3 mysql json

如果我在 mysql 数据库的列中有如下 json

[
 {
  "name": "John",
  "checked": true
 },
 {
  "name": "Lucy",
  "checked": false
 }
]
Run Code Online (Sandbox Code Playgroud)

如何在 mysql 中选择相同对象名称 = 'John' 且已检查 = true 的所有行。

json 对象可能有更多的键,键可能没有特定的顺序。

小智 6

只需使用 JSON_CONTAINS:

SELECT * from `users`
WHERE JSON_CONTAINS(`data`, '{"name": "John","checked": true}');
Run Code Online (Sandbox Code Playgroud)