mysql 查询包含某个数字的数据行

包含关系,第一反应就是用like做模糊查询,稍微一想,万一查询tag_id=4的数据,查到14的数据怎么办?在4前后加上,(逗号)做查询,tag_id=',4,',这样倒是可以避免查询到14,41之类的集合.可以万一tag_ids值就是4,反而查询不到了.然后又是求助百度,基本都是讲like的应用,不适用我的情景.接着去交流群,还真有个兄弟提出了一个mysql函数,FIND_IN_SET(),网上有不少兄弟对find_in_set()的讲解,下面是我项目里的应用:

$wh = ' FIND_IN_SET('.$tag_id.',a.tag_ids) ';

$article_list = M('article')

    ->alias('a')

    ->join('left join __CATEGORY__ as b on a.category_id=b.category_id')

    ->where($wh)

    ->select();


发表评论

  1. play casino games online: https://www.btlcasino.com https://www.btlcasino.com/theking https://www.btlcasino.com/sands https://www.btlcasino.com/first https://www.btlcasino.com/yes https://www.btlcasino.com/super https://www.btlcasino.com/gatsby https://www.btlcasino.com/33