注意二:内容为json
注意三:mysql服务器版本为5.7及以上
语法:select * from 表名 where 字段->'$.属性'='查询内容'
select * from table1 where col1->'$.name'='xiaoming'
json_contains参数需要指定path,path如果不存在返回Null,path存在但是指定值不存在返回0,指定值存在则返回1。该函数需要注意的地方请查看 该文章
json_search(json_doc,one_or_all,search_str [,escape_char [, path]])
和json_contains相比,该函数不需要指定具体的path,更像是like一样的模糊查询。
如果查询的str存在,则返回具体的path,如果不存在则返回null。
注意
json_search() 只能搜索字符串,而不能搜索整形 。
比如 str字段值为{"name":"xiaoyu","old":12}
json_contains适合用于指定path的查询,而json_search适合模糊查询,比如说看下json中是否有'hello'这个字符串,而并不需要知道它在什么位置。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)