Mysql快速查找用逗号分割的列中含有某个字符的行:FIND_IN_SET

看标题比较绕口,但是我举一个例子你就清楚了

这是一个查询:我现在想要的是attr_val中含有黑色属性的行:

你用模糊匹配可以,用REGEXP也行,下面介绍一种mysql自带的函数:FIND_IN_SET。它的用法是:

FIND_IN_SET(search_value, string_list)

其中:search_value是要查找的值,string_list是逗号分隔的字符串列表。该函数返回找到的值在列表中的位置,如果找不到则返回0。

那我们就可以些这样一个sql来过滤出我们要查的所有行:


SELECT * FROM goods_attribute
WHERE FIND_IN_SET('黑色', attr_val) > 0;

怎么样,会了吗?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值