mysql查询字段类型为json时的两种查询方式

 更新时间:2019年07月09日 14:42:08   作者:年轻的风  
这篇文章主要介绍了mysql查询字段类型为json时的两种查询方式,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

表结构如下:

id    varchar(32) 
info   json 

数据:

id = 1
info = {"age": "18","disname":"小明"}

--------------------------------------------

现在我需要获取info中disanme的值,查询方法有:

1.

select t.id,JSON_EXTRACT(t.info,'$.disname') as disname from tableName t where 1=1

结果:

id = 1, disname=“小明”

以上sql查出的disname值是带有双引号的,有时我们不需要双引号,此时就需要用到下面这种方式。

2.

select t.id,t.info ->> '$.disname' as disname from tableName t where 1=1

结果:

id = 1 , disname=小明

ps:下面看下mysql查询json字段

建表语句

Create Table 
 CREATE TABLE `test` (
  `id` int(10) ,
  `user` json DEFAULT NULL COMMENT '用户信息',
  PRIMARY KEY (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 

插入数据

需要注意的是,json数据外面需要单引号来区别

INSERT INTO test (id,USER) VALUES(1,'{"name": "tom", "age": 18, "money": 3000}');
INSERT INTO test (id,USER) VALUES(2,'{"name": "jack", "age": 20, "money": 100}');
INSERT INTO test (id,USER) VALUES(3,'{"name": "tony", "age": 21, "money": 100}');
INSERT INTO test (id,USER) VALUES(4,'{"name": "danny", "age": 21, "money": 20}');
INSERT INTO test (id,USER) VALUES(5,'{"name": "janny", "age": 23, "money": 20}');

表数据如下

查询语句

SELECT id,JSON_EXTRACT(USER,'$.name')FROM test;

下面是查询结果

总结

以上所述是小编给大家介绍的mysql查询字段类型为json时的两种查询方式 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Windows10下MySQL5.7.19安装教程 MySQL忘记root密码修改方法

    Windows10下MySQL5.7.19安装教程 MySQL忘记root密码修改方法

    这篇文章主要为大家详细介绍了Windows10下MySQL5.7.19安装教程,以及MySQL忘记root密码的修改方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • mysql中的保留字段产生的问题

    mysql中的保留字段产生的问题

    我们在使用mysql的时候要注意这方面的问题,一个因为数据库字段命名不当造成的问题检查起来还是相当麻烦的,今天遇到这种问题,花费了很长时间才找到问题所在,这是无语
    2015-04-04
  • 关于mysql 8.0.13zip包安装方法

    关于mysql 8.0.13zip包安装方法

    这篇文章主要介绍了关于mysql 8.0.13zip包安装方法,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2018-11-11
  • MySql范围查找时索引不生效问题的原因分析

    MySql范围查找时索引不生效问题的原因分析

    这篇文章主要给大家介绍了关于MySql范围查找时索引不生效问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • MYSQL METADATA LOCK(MDL LOCK)MDL锁问题分析

    MYSQL METADATA LOCK(MDL LOCK)MDL锁问题分析

    这篇文章主要介绍了MYSQL METADATA LOCK(MDL LOCK)MDL锁问题分析,并通过实例给大家例句的问题处理办法,需要的朋友参考学习下。
    2017-12-12
  • MySQL复制表的三种方式(小结)

    MySQL复制表的三种方式(小结)

    这篇文章主要介绍了MySQL复制表的三种方式(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • CentOS 7中安装mysql server的步骤分享

    CentOS 7中安装mysql server的步骤分享

    这篇文章主要介绍了CentOS 7中安装mysql server的步骤分享,需要的朋友可以参考下
    2015-09-09
  • 关于MYSQL的优化全面详解

    关于MYSQL的优化全面详解

    一直用了那么久的mysql,虽然了解了一些优化方法,但是都是比较简单的一些应用,这次就系统的了解一下
    2012-09-09
  • MySQL基本操作语句小结

    MySQL基本操作语句小结

    这篇文章主要介绍了MySQL的基本操作语句,是MySQL入门学习中的基础知识,需要的朋友可以参考下
    2015-07-07
  • MySQL数据库的一次死锁实例分析

    MySQL数据库的一次死锁实例分析

    本文主要给大家通过一个实例来具体介绍MySQL死锁问题的相关知识,接下来我们就来一一介绍这部分内容,希望能够对您有所帮助。
    2016-11-11

最新评论