mysql json 数组怎么搜索

在MySQL中,可以使用JSON_CONTAINS函数来搜索JSON数组中的元素。这里有一个简单的例子:

假设有一个名为items的表,其中有一个名为attributes的列,包含JSON数组。

bash 复制代码
CREATE TABLE items (
    id INT AUTO_INCREMENT PRIMARY KEY,
    attributes JSON
);


INSERT INTO items (attributes) VALUES
('["apple", "banana", "cherry"]'),
('["banana", "cherry", "date"]'),
('["apple", "banana", "date"]');

如果你想要搜索包含"banana"的attributes,可以使用以下查询:

bash 复制代码
SELECT * FROM items
WHERE JSON_CONTAINS(attributes, JSON_OBJECT('key', 'banana'));

JSON数组

bash 复制代码
INSERT INTO items (attributes) VALUES
('[1, 2, 3]'),
('[1, 104, 101]'),
('[102, 101, 202]');

如果要查询包含 101 这个数字的 attributes

bash 复制代码
SELECT * FROM `items` 
WHERE JSON_CONTAINS(`attributes`, CAST(101 AS JSON))
相关推荐
Yvonne爱编码19 小时前
数据库---Day8 多表联合查询
数据库
云飞云共享云桌面19 小时前
SolidWorks三维设计不用单独买电脑,1台服务器10个设计用
运维·服务器·数据库·3d·电脑
l1t19 小时前
DeepSeek总结的PAX:PostgreSQL存储引擎
数据库·postgresql
我不听你讲话19 小时前
PostgreSQL 日常维护核心内容总结
数据库·postgresql
江畔何人初19 小时前
GTID的作用
linux·运维·服务器·mysql·云原生·kubernetes
倔强的石头10619 小时前
数据库行标识符机制探究:OID、ROWID与自增主键的实现与应用
数据库·oracle·kingbase
quintin-lee19 小时前
Postgres 内核:从入门到“入土” (三) —— Page 结构:数据是如何在磁盘上“躺平”的
c语言·数据库·postgresql·数据库架构
Southern Wind19 小时前
AI Skill Server 动态技能中台
前端·后端·mysql·node.js
不愿透露姓名的大鹏20 小时前
MySQL Binlog配置优化全攻略
运维·服务器·数据库·mysql·adb
柒.梧.20 小时前
MySQL核心考点:存储引擎区别+视图详解
数据库·mysql·面试