
利用 mysql 的 find_in_set 函数查询字段包含指定值
在 mysql 数据库中,当表字段包含以逗号分隔的多个值时,我们无法像模糊查询那样直接找到匹配指定值的记录。这时,find_in_set 函数可以帮助解决此问题。
假设我们有一个表名为 “test”,其中包含以下 “ids” 字段值:
| ids ||---|---|| null || 350 || 34,35,36,37 |
如果我们需要查找包含数字 “35” 的记录,可以使用以下查询:
select * from test where find_in_set(35, ids)
find_in_set 函数将 “35” 作为第一个参数,将 “ids” 字段值作为第二个参数。该函数返回一个数字,表示 “35” 在 “ids” 字段值中的位置,如果不存在则返回 0。
上面写出的查询实际上寻找 “ids” 字段值中包含 “35” 的记录,因此它将返回以下结果:
| ids ||---|---|| 34,35,36,37 |
请注意,即使 “350” 也包含数字 “35”,但它不包含在由逗号分隔的纯数字字符串中,因此 find_in_set 函数不会将其匹配。
以上就是如何使用MySQL find_in_set函数查询字段包含指定值?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/39278.html
微信扫一扫
支付宝扫一扫