MySQL WHERE 比较多个值中的多个值

MySQL WHERE Comparing Multiple Values IN Multple Values

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

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

子查询 "SELECT ... atable" returns row ids 3,9,8,1

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

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

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

我想你想要

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

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