jsonpath 判断是否包含_mysql json 判断某个key是否存在

我们知道mysql5.7开始就支持json字段的类型,很多时候用字段类型存数据会非常的方便。

今天我们探讨就是mysql跟json字段类型有关的查询,判断key是否存在。

mysql提供了大量的处理json字段的函数,对于key值得判断也提供了这样一个函数——json_contains_path(json_doc, one_or_all, paths)

下面就来解释一下这个函数的用法:

1.返回值:对于这种判断类型的函数返回的一般都是true or false 或者 1 和 0。这个函数也如此,在mysql返回的是1和0。

2.参数分析:json_doc顾名思义就是json数据;paths是指要找的key,可以传入多个的key参数;one_or_all指一个值是one表示找出paths参数中的任意一个,all表示找出全部。

如:

//是否含有positon key。

select json_contains_path("{'name':'chenxing', 'age':'保密','position':'php 工程师'}",

'one', '$.position')

//返回的结果是1

//是否同时含有position,age

select json_contains_path("{'name':'chenxing', 'age':'保密','position':'php 工程师'}",

'all', '$.position', '$.age');

//返回的结果是1

key的存在判断就是这么简单。

如果想掌握更多json函数的应用可以上mysql5.7官网查看。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值