MySQL IN条件获得始终为false的结果

时间:2016-06-27 18:50:51

标签: mysql

我需要一个条件,当与IN条件一起使用时,它不会返回任何结果。我最初认为这会起作用,但它仍会给出结果:

SELECT * FROM MyTable WHERE myColumn IN (SELECT FALSE FROM dual WHERE FALSE);

是否存在我可以置于IN状态以使其始终无法返回结果的条件?

注意:这在PHP函数中使用,其中列可以是任何具有任何值的类型。

1 个答案:

答案 0 :(得分:4)

而不是false使用null。当null出现在表达式中时,总会导致整体null值(有一些例外情况,例如is null,但不会出现in的上下文:< / p>

... in (select null from dual where null)