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

时间:2021-02-02 22:44:53

表结构如下:

id        varchar(32)

info     json

数据:

id =
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=小明