在实际开发中用到,在这里浅谈一下。
1. 新建一张表
如下图,随意新建一张表,其中一个字段类型设置为json就行了
2. 不同json下查询
2.1 json_object查询
以下写的是精确查询,只需要把其中的 = 换成 like再在内容中加上%就可以模糊查询了
在表中添加信息
json_extract查询
查询的方式是 select * from my_user where json_extract(字段名,'$.属性名') = '内容'
json_object中多个属性值进行查询,写多个json_extract连接就好了
简单写法
json_extract的简单写法
json_contains查询
json_object就是将里面的参数组成对象形式
select * from `my_user` where json_contains(字段名, json_object('属性名', '内容'))
多个属性值查询
2.2 json_arry查询
表中添加数据
json_contains查询
json数组所有对象中,只要有一个对象满足条件
json数组所有对象,只要有对象分别满足其中的筛选条件就会被查询到
模糊查询
其中的$[*] 代表筛选所有的数组对象,只要所有对象中有一个name模糊查询符合就得到结果。
$[0]写成数字就表示数组中下标为0的对象name进行模糊查询匹配
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论