Mysql查询:如何判断某字段是否包含某个字符串?

今天一个群有人向我求助这样一个问题,它的mysql表结构和表数据如下图:

Mysql查询:如何判断某字段是否包含某个字符串

现在,这位群友的要求是:title字段有1和3的都要查出来,应该如何做?

 

解决办法

其实,解决这个问题的思路有很多,方法就更多了。抛开其它的不讲,我们只站在mysql角度来讲,仅用mysql查询实现就有三种方法:

 

1、单个值查询使用myql函数:FIND_IN_SET()

SELECT * FROM `by_content` WHERE FIND_IN_SET('1',title);

 

2、多个值模糊查询,使用mysql正则:REGEXP。此方式相当于( LIKE '%1%' OR LIKE '%3%' OR LIKE '%5%' )

SELECT * FROM `by_content` WHERE title REGEXP '(1|3|5)';

 

3、多个值匹配查询,使用mysql正则:REGEXP,此方式相当于( FIND_IN_SET('1',title) OR FIND_IN_SET('3',title) OR FIND_IN_SET('5',title) )

SELECT * FROM `by_content` WHERE title REGEXP '(^|,)(1|3|5)(,|$)';

 

我的最终建议是用:mysql字符串find_in_set函数,完整sql语句如下:

SELECT * FROM `by_content` WHERE find_in_set('1', title) UNION SELECT * FROM `by_content` WHERE find_in_set('3', title);
    A+
发布日期:2019年01月04日 19:49:48  所属分类:Mysql
最后更新时间:2019-01-04 19:59:55
评分: (3 票;平均数5.00 ;最高评分 5 ;用户总数3;总得分 15;百分比100.00)
付杰
刷流量、刷人气、刷点击、刷收藏、刷APP关键词服务
刷流量、刷人气、刷点击、刷收藏、刷APP关键词服务
  • ¥ 1.0元
  • 市场价:9.9元
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
花牛苹果 甘肃天水 李宏恩家自种 1斤 包邮
  • ¥ 6.8元
  • 市场价:8.8元
wp discux 帝国 dedecms phpcms等快速建站
wp discux 帝国 dedecms phpcms等快速建站
  • ¥ 99.9元
  • 市场价:499.9元
服务器管理面板/主机控制面板“安装”服务
服务器管理面板/主机控制面板“安装”服务
  • ¥ 9.9元
  • 市场价:49.9元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: