mysql解析json/数组

7 篇文章 0 订阅
6 篇文章 0 订阅

tb1.theColumnName->'$.jsonkey' as columnName

 

==========================================================

json_search

mysql查询字段为json,数据为数组时,条件的写法

多肉推书官 2019-05-14 20:48:45  9495  收藏 6
版权
格式为
id data

1 [“joy”,“mike”]
2 [“nini”, “jack”]

查询data字段里有jack的数据

select * from tb where  JSON_CONTAINS(data->'$[*]', '"jack"', '$')
————————————————
版权声明:本文为CSDN博主「多肉推书官」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38946537/article/details/90214756

 

=====================================================================================================

 

MySQL JSON相关函数
MySQL官方列出json相关的函数,完整列表如下:

分类    函数    描述
创建json    json_array    创建json数组
     json_object    创建json对象
     json_quote    将json转成json字符串类型
查询json    json_contains    判断是否包含某个json值
     json_contains_path    判断某个路径下是否包json值
     json_extract    提取json值
     column->path    json_extract的简洁写法,MySQL 5.7.9开始支持
     column->>path    json_unquote(column -> path)的简洁写法
     json_keys    提取json中的键值为json数组
     json_search    按给定字符串关键字搜索json,返回匹配的路径
修改json    json_append    废弃,MySQL 5.7.9开始改名为json_array_append
     json_array_append    末尾添加数组元素,如果原有值是数值或json对象,则转成数组后,再添加元素
     json_array_insert    插入数组元素
     json_insert    插入值(插入新值,但不替换已经存在的旧值)
     json_merge    合并json数组或对象
     json_remove    删除json数据
     json_replace    替换值(只替换已经存在的旧值)
     json_set    设置值(替换旧值,并插入不存在的新值)
     json_unquote    去除json字符串的引号,将值转成string类型
返回json属性    json_depth    返回json文档的最大深度
     json_length    返回json文档的长度
     json_type    返回json值得类型
     json_valid    判断是否为合法json文档
在Mysql5.7版本及之后的版本可以使用column->path作为JSON_EXTRACT(column, path)的快捷方式。这个函数可以作为列数据的别名出现在SQL语句中的任意位置,包括WHERE,ORDER BY,和GROUP BY语句。同样包含SELECT, UPDATE, DELETE,CREATE TABLE和其他SQL语句。->左边的参数为JSON数据的列名而不是一个表达式,其右边参数JSON数据中的某个路径表达式。
————————————————
版权声明:本文为CSDN博主「Simon格子」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/szxiaohe/article/details/82772881

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值