sql语句中对json数据的操作

1.获取指定json字符串中指定的属性值,以下三种写法等价: //attributes_json字段的值为一个json字符串,下面的语句都是获取attributes_json中的DP属性的值

json_extract(attributes_json,'$.DP')   //json_extract()方法获取json中指定的值,格式:json_extract(json_field,'$.DP')
attributes_json->'$.DP'
attributes_json->>'$.DP' //可以有两个尖括号

2.去掉查询结果中首尾的双引号:
json_unquote()

如:
1)select * from t1 where attributes_json->'$.P2PUser'=1 AND attributes_json->'$.PONUser'=12               
 //表中attributes_json值为一个json字符串,上面的条件中,attributes_json->'$.P2PUser'=1 含义为attributes_json 字段中P2PUser属性的值等于1

2)select json_unquote(json_extract(attributes_json,'$.DP')) as column_value from t_demand_point where instance_id=2146

转自:https://www.cnblogs.com/liuxuelin/p/9984498.html

你可能感兴趣的:(sql)