MySQL中如何高效查询JSON数据:方法与实例详解
在MySQL中,查询JSON数据主要通过JSON函数实现,例如使用 JSON_EXTRACT()-> 运算符来提取JSON字段中的特定值,确保数据存储在JSON类型的列中,这是高效查询的基础,若有一个名为 user_info 的JSON列,其中包含用户信息,可以通过以下方式查询:

SELECT JSON_EXTRACT(user_info, '$.name') AS user_name FROM users;

或者使用更简洁的 -> 运算符:

mysql 如何查询json,高效查询MySQL JSON数据方法

SELECT user_info->'$.name' AS user_name FROM users;

重点在于,MySQL还支持 JSON_SEARCH() 用于查找JSON中的路径,以及 JSON_CONTAINS() 检查是否包含特定值,这能大幅提升查询灵活性,查询包含特定标签的JSON记录:

SELECT * FROM products WHERE JSON_CONTAINS(tags, '"sale"');

索引优化是关键,可通过生成列(Generated Columns)为JSON中的常用字段创建索引,以加速查询。

ALTER TABLE users ADD COLUMN user_name VARCHAR(50) AS (user_info->'$.name') STORED, ADD INDEX idx_name (user_name);

结合JSON函数和索引策略,能高效处理MySQL中的JSON数据查询需求。

未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网

原文地址:https://www.html4.cn/10159.html发布于:2026-08-11