Mysql SQL:总是从'IN'条件返回true

Mysql SQL:总是从'IN'条件返回true,mysql,sql,Mysql,Sql,如何使条件下的始终返回true,就像其中的1,我尝试了null,但没有成功: WHERE X IN (NULL) 是否有办法使中的始终返回true并接受所有行 从以下内容返回true: where X in ("Any value here to alway return true") 最好是包含要比较的列: where x in (x) 但是,这不包括NULL值。事实上,您无法实现此返回: where NULL in ( . . . ) 您可以将其修改为: where coalesce

如何使条件下的
始终返回true,就像
其中的1
,我尝试了null,但没有成功:

WHERE X IN (NULL)
是否有办法使
中的
始终返回true并接受所有行

从以下内容返回true:

where X in ("Any value here to alway return true")

最好是包含要比较的列:

where x in (x)
但是,这不包括
NULL
值。事实上,您无法实现此返回:

where NULL in ( . . . )
您可以将其修改为:

where coalesce(x, '') in (coalesce(x, '')

一种方法是使用
左连接

select t.*
from table t left join
     ( . . .  ) tt
     on tt.x = t.x;

很抱歉,我忘了在我的问题中添加一列。这样的问题无法返回true:
其中x在(这里的某个东西)
@mwafi。如果
x
NULL
,表达式将始终返回
NULL
(我可以警告,某些数据库可能具有与标准不同的设置来处理
NULL
)。但是对于非
NULL
值,您可以在列表中包含
x
。我不想在列x中匹配NULL,我需要条件始终返回true@mwafi . . . 也许您只是在
where
子句中添加
或1=1
。空值需要一些额外的处理。我会做
其中x为null或x in(..)
@jarlh我不与null比较我需要始终返回true而不关心列值我必须使用
中的
是否有任何方法始终从以下内容返回true:
其中x in(“此处的任何值始终返回true”)