系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 数据库 > Mysql > 详细页面

MySQL对JSON数据进行查询实例代码

时间:2023-10-29来源:系统城装机大师作者:佚名

MySQL根据JSON字段的内容检索查询数据

1、使用 字段 -> ‘$.json’ 属性’ 进行查询条件

以下这两种会快很多,可以自己测试

2、使用 json_extract 函数查询,json_extract(字段, “$.json属性”)

3、根据json数组查询,用 JSON_CONTAINS (字段, JSON_OBJECT(‘json属性’, “内容”))

MySQL5.7以上支持JSON的操作,以及增加了JSON存储类型

般数据库存储JSON类型的数据会用JSON类型或者TEXT类型

注意:用JSON类型的话
1)JSON列存储的必须是JSON格式数据,否则会报错。
2)JSON数据类型是没有默认值的。

举个栗子

1、首先我们看到数据表中,Form_Value_一列是josn格式存在的,又想通过其中的一组或者几组键值对来进行查询。

2、通过以下语句就可以通过key,value来进行查询了,如果多个条件,正常加 and 就可以了。

**注意:**like 查询varchar类型时要将单箭头变为双箭头直接匹配值模糊查询 ->>

1 SELECT * FROM vx_live_room where info ->> 'name' like '%测试%'

1 SELECT * FROM core_process where Form_Value_ -> '$.attendancer' = '马立新'


3、如果是Mybatis框架,要把 > 符号转义,像这样用 <![CDATA[ ]]>

1 <![CDATA[   Form_Value_ -> '$.endDate' < #{endDate,jdbcType=VARCHAR}    ]]>

扩充:

查询jaon串,返回json串里的某个字段

2.结果字段为json串

3.取json串中某个key的value值

4.->和->>区别,如图

-> 结果值带双引号"值"

->> 结果值不带引号

null依旧是null,不管符号是->还是->>

总结

到此这篇关于MySQL对JSON数据进行查询的文章就介绍到这了

分享到:

相关信息

  • mysql存储过程游标之loop循环解读

    mysql存储过程游标loop循环 loop mysql存储过程游标遍历使用简述...

    2023-10-29

  • MySQL实现主从复制的原理详解

    异步复制 半同步复制 垂直分库 水平分库分表 主从复制是怎么实现的呢?当MySQL数据库发生写操作的时候会记录下binlog,它是一种逻辑日志。有了这个 binlog,从服务器会获取...

    2023-10-29

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载