数据库 
首页 > 数据库 > 浏览文章

mysql5.6及以下版本如何查询数据库里的json

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

MySQL里面保存数据有时候会把一些杂乱且不常用的时候丢进一个json字段里面

下面说说mysql存储json注意那些格式吧:

1:注意保存是中文不要变成转码的,转码之后导致查询非常麻烦,压缩时候后面多带一个参数,方便不止一点点哟!

json_encode(array(),JSON_UNESCAPED_UNICODE);

好处:这样查询的时候中文字符更好的匹配查询

2:字段统一    存的时候最好开始定好字段名称  ,开发一个大点的项目不可能一个人开发统一字段可以减少很多不需要的麻烦和字段不同意导致bug(反正我是在这上面吃过一个亏,但是带大家做项目当时没想到加上赶导致后面测试修改耗费比开发更多时间)

好处:减少查询出来数据代码处理量,降低项目页面显示bug

3:能存一维数组绝对不要存二维数组

原因:二维数组不可控,这个还是的更具需求来定

个人习惯反正这是我的习惯,哈哈哈,不爽可以来打我呀!

下面说正事:查询当然用的是like

例如有一张table表里面有一个content字段,现在是找出actid为123456789的

5.7:select * from table where content->'$.actid' like '%123456789%';
5.6:select * from table where content like '%"actid":"123456789"%'

这样应该一看就懂,教学吗教肯定全套,做个保健不也是,所以代码里面有的人说怎么用

$id="123456789";
$sql="select * from table where content like '%\"actid":\""$id"\"%\'";

以上所述是小编给大家介绍的mysql5.6及以下版本如何查询数据库里的json,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

上一篇:解决Mysql5.7中文乱码的问题
下一篇:win7下mysql5.7.17安装配置方法图文教程
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。