新闻中心

json函数在mysql中如何操作

2025-10-12
浏览次数:
返回列表
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的内容不仅仅是这些。书中还提到如何串联J*aScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR*函数库的强大功能,对常用的、强大的包

动态WEB网站中的PHP和MySQL:直观的QuickPro指南第2版 525 查看详情 动态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中如何操作的详细内容,更多请关注其它相关文章!


# js  # json  # ai  # 键值对  # json数组  # 离线  # mysql  # 腾讯营销通推广到抖音  # seo新站优化营销  # 北京推广营销策划单价  # 义乌营销推广运营  # seo快照推广服务  # 新乡推广网站搭建优化  # 网店推广营销软件app  # 产品推广到国外网站怎么做  # 建立网站seo优化服务  # 优化网站怎么样做才好用  # 能在  # 你可以  # 操作步骤  # 北京  # 转换为  # 全攻略  # 多个  # 键值  # 镜像 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: Excel组合图表怎么做 Excel创建柱状图与折线组合图教程【图表】  百度网盘网页版入口 百度网盘网页版官方登录网址  漫蛙MANWA漫画主页官方入口 漫蛙漫画最新在线阅读地址  Composer的 archive 命令怎么用_快速打包你的PHP项目及其Composer依赖  腾讯QQ邮箱官方网站_QQ邮箱网页版在线登录  探索高级语言到C/C++的转译路径:以Go为例及内存管理策略  126邮箱账号注册 电脑版登录入口  J*aScript中高效管理与清空动态列表:避免循环陷阱  高德地图家和公司地址在哪设置 高德地图通勤路线设置方法【超详细】  荣耀Play7T运行卡顿解决_荣耀Play7T性能优化  蛙漫画网页版全站入口 蛙漫热门作品免费浏览  使用J*aScript检测输入元素是否包含在特定类中  高德地图怎么看全景照片_高德地图全景照片浏览教程  C#使用XPath查询节点时出错? 常见语法错误与调试技巧  漫蛙漫画登录站点 漫蛙2正版漫画快速访问  快速CSGO开箱网站指南 CSGO开箱平台推荐  百度浏览器字体显示异常偏小_百度浏览器字体渲染修复方案  Lar*el 递归关系中排除指定分支的教程  抖音怎么赚钱_抖音创作者变现方法与途径指南  汽水音乐网页版使用入口_汽水音乐电脑版播放指南  将HTML动态表格多行数据保存到Google Sheet的教程  千牛数据看板网页版_千牛数据看板网页版访问方法  漫蛙漫画官方首页 漫蛙2漫画在线阅读入口  c++如何使用折叠表达式(Fold Expressions)_c++17可变参数模板新技巧  在Blazor WebAssembly应用中动态注入客户端特定指标代码的策略  Win11网速慢怎么解决 Win11网络设置优化解除限速  Win11怎么开启省电模式_Win11电池节电模式自动开启  Yandex官方入口网址 Yandex俄罗斯搜索引擎最新在线地址  晋江读书网页版在线登录 晋江读书电脑版官网  HTML转PPT成品工具有哪些?HTML网页转PPT成品工具大全  优化 Python 函数中的条件逻辑:解决 if-else 嵌套与参数选择问题  邮政快递包裹最新位置 邮政快递实时追踪入口  Promise错误处理:在catch后终止链式then执行的策略  QQ邮箱官方邮箱登录入口 QQ邮箱网页版快速访问  天猫双十一预售商品怎么退款_天猫双十一预售退款操作指南  J*a递归快速排序中静态变量的状态管理与陷阱  Golang并发任务中错误如何聚合_Golang goroutine error收集方式  蛙漫正版漫画平台入口_蛙漫免费阅读全站漫画资源  可靠CSGO开箱平台解析 CSGO开箱网合集  jQuery Mask 插件中实现电话号码固定前导零的教程  Linux如何排查内存不足OOME问题_LinuxOOM分析教程  Excel Power Pivot如何处理XML数据源 构建高级数据模型  12306几点到几点不能订票? | 官方最新系统维护时间全解析  c++如何实现单例设计模式_c++线程安全的单例模式写法  漫蛙2(台版)官方入口地址 漫蛙2(台版)正版漫画网页端  css绝对定位元素脱离父容器怎么办_确保父元素position非static  C#如何安全地从用户上传的XML文件中读取数据? 验证与清理策略  python3时间如何用calendar输出?  J*a里如何实现线程安全的懒加载单例_懒加载单例实现方法解析  ExcelARRAYTOTEXT函数怎么自定义分隔符输出数组文本_ARRAYTOTEXT实现动态生成SQL语句 

搜索