SCALAR_NOT_IN

SCALAR_NOT_IN子查询表达式形如:

scalar_not_in ::=

这种形式的NOT IN的右手边是一个圆括弧括起来的标量表达式的列表。如果左手边表达式的结果与所有右手边表达式的结果都不相等,那么结果是 TRUE。它是下面表示法的缩写:

expression <> value1
AND
expression <> value2
AND
...

请注意如果左手边表达式生成NULL,或者存在相等的右手边数值,并且至少有一个右手边行生成 NULL,那么NOT IN构造的结果将是NULL,而不是 TRUE。这个行为是遵照 SQL 处理布尔和NULL值组合时的规则定的。