开发者社区> 问答> 正文

MySQL WHERE IN()?mysql

我的查询是:

SELECT * FROM table WHERE id IN (1,2,3,4); 我将其用于用户组,并且一个用户可以在多个组中。但是,当一条记录具有多个ID(如1和3)时,mySQL不会返回该行。

有没有办法也能获得那排呢?

展开
收起
保持可爱mmm 2020-05-17 21:33:42 1114 0
1 条回答
写回答
取消 提交回答
  • 您的查询翻译成

    SELECT * FROM table WHERE id='1' or id='2' or id='3' or id='4'; 它只会返回与其匹配的结果。

    解决它避免复杂性的一种方法是将数据类型更改为SET。然后,您可以使用FIND_IN_SET

    SELECT * FROM table WHERE FIND_IN_SET('1', id);来源:stack overflow

    2020-05-17 21:39:08
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像