SQL 检查值是否改变(包括从 NULL 或到 NULL)

问题描述 投票:0回答:0

我有一个 SQL 查询,我需要通过检查它们是否不等价来比较一个值与另一个值。这意味着如果 val1 不等于 val2,我的 WHERE 子句将执行验证,即

SELECT
. . .
WHERE val1 != val2

我知道标准 SQL-92 声明

!=
<>
都不适用于
NULL
,这意味着上述执行类似
3 != NULL
的逻辑不会像人们预期的那样返回 true

我的问题是,在考虑 NULL 的情况下,如何更改此 WHERE 以检查值的变化?

在这种情况下,val1 或 val2 都可以是

NULL
并且它们可以设置为往返于
NULL
所以我不相信我不能运行比较,例如
IS NULL
IS NOT NULL
在一个简单的方式,因为我不确定传入的 val1 或 val2 是否已经是
NULL

任何帮助将不胜感激,谢谢!

sql select null compare where-clause
© www.soinside.com 2019 - 2024. All rights reserved.