json函数在mysql中如何操作

P粉602998670
发布: 2025-10-12 20:46:01
原创
903人浏览过
MySQL从5.7起支持JSON类型,提供JSON_OBJECT、JSON_ARRAY插入数据,JSON_EXTRACT和->、->>查询,JSON_SET、JSON_INSERT、JSON_REPLACE、JSON_REMOVE修改,JSON_VALID、JSON_CONTAINS、JSON_OVERLAPS验证与判断,路径以$开头,支持对象和数组操作。

json函数在mysql中如何操作

MySQL从5.7版本开始支持JSON数据类型,提供了丰富的函数来操作JSON字段。这些函数可以帮助你创建、查询、修改和验证JSON数据。下面介绍常用的JSON函数及其用法。

插入和创建JSON数据

你可以使用JSON_OBJECTJSON_ARRAY或直接插入合法的JSON字符串。

  • JSON_OBJECT(key, value, ...):将键值对转换为JSON对象。
  • JSON_ARRAY(val1, val2, ...):将值转换为JSON数组。

示例:

INSERT INTO users (info) VALUES (JSON_OBJECT('name', '张三', 'age', 25));
INSERT INTO tags (data) VALUES (JSON_ARRAY('mysql', 'json', 'database'));

查询JSON字段中的值

使用JSON_EXTRACT或 -> 和 ->> 操作符提取数据。

  • JSON_EXTRACT(json_col, path):根据路径提取值,返回带引号的JSON格式。
  • col->"$.path":等同于JSON_EXTRACT,返回JSON格式。
  • col->>"$.path":返回去引号的纯文本值。

示例:

SELECT JSON_EXTRACT(info, '$.name') FROM users;
SELECT info->"$.age" AS age FROM users;
SELECT info->>"$.name" AS name FROM users;

修改JSON数据

使用JSON_SETJSON_INSERTJSON_REPLACEJSON_REMOVE等函数更新JSON内容。

动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版
动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版

动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包

动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版 508
查看详情 动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版
  • JSON_SET:设置值,如果键存在则更新,否则添加。
  • JSON_INSERT:插入值,仅当键不存在时生效。
  • JSON_REPLACE:替换值,仅当键存在时生效。
  • JSON_REMOVE:删除指定路径的元素。

示例:

UPDATE users SET info = JSON_SET(info, '$.age', 26, '$.city', '北京');
UPDATE users SET info = JSON_REMOVE(info, '$.temp_flag');

判断和验证JSON

使用以下函数确保数据合法性或进行条件判断。

  • JSON_VALID(json_string):检查字符串是否为有效JSON,返回1或0。
  • JSON_CONTAINS(json_col, target, path):判断JSON是否包含指定值。
  • JSON_OVERLAPS(a, b):判断两个JSON数组是否有相同元素。

示例:

SELECT * FROM users WHERE JSON_CONTAINS(info, '"北京"', '$.city');
SELECT JSON_VALID('{"name": "test"}'); -- 返回1

基本上就这些常用操作。掌握这些函数后,就能在MySQL中灵活处理JSON数据了。注意路径表达式以$开头,.key表示对象属性,[index]表示数组元素。不复杂但容易忽略细节。

以上就是json函数在mysql中如何操作的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号