【问题标题】:MySQL WHERE Comparing Multiple Values IN Multple ValuesSQL WHERE 比较多个值中的多个值
【发布时间】:2015-08-15 12:20:43
【问题描述】:

有没有办法在 MySQL 中实现这一点(使用伪代码):

 SELECT .... WHERE (1,4,3,6) IN (SELECT id FROM atable);

whereby 子查询“SELECT ... atable”返回行 ID 3,9,8,1

想要的效果是在 2 组字段重叠的地方做一些事情,即上面例子中的 3 和 1。

原因?我需要比较(来自 PHP)具有逗号分隔值的字段,并在记录适用的情况下执行操作。然而,在我的用例中,在 PHP 中执行此操作的选项是不可能的,因为其他一些原因过于复杂,无法在此处解释。

我一直在网上搜索,但没有偶然发现类似的东西。

【问题讨论】:

  • 那个语法是“行构造函数”,不是你需要的。

标签: mysql where-in


【解决方案1】:

我想你想要

SELECT id FROM atable WHERE id IN (1,4,3,6);

如果id 不存在于atable 中,则它不会出现在结果中。如果id 不在 (1,4,3,6) 列表中,它也不会出现。那么你得到的是路口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-31
    • 1970-01-01
    • 2011-05-05
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    相关资源
    最近更新 更多