<>
是标准sql-92;!=
是等效的。两者都评估值,但NULL
不是-NULL
是占位符,表示不存在值。
这就是为什么您只能在此类情况下使用IS NULL
/IS NOT NULL
作为谓词的原因。
此行为不特定于sql Server。所有符合标准的sql方言都以相同的方式工作。
:要比较如果您的 ,请使用IS NOT NULL
,而要与 值进行比较,请使用<> 'YOUR_VALUE'
。我不能说我的值是否等于NULL,但是我可以说我的值是NULL还是NOT NULL。如果我的值不是NULL,则可以进行比较。