Microsoft SQL 服务器 "NOT query" 不工作

Microsoft SQL Server "NOT query" not working

在我多年的编码生涯中,我感到很困惑。我在 SQL 服务器数据库上通过 PHP 运行 运行 查询,但缺少一个结果。我们将缺失的记录称为"Joe"

当我运行:

SELECT [SlpName], [Memo] 
FROM OSLP 
WHERE [Memo] = 'GONE'

我得到 8 个结果

SELECT [SlpName], [Memo] 
FROM OSLP 
WHERE [Memo] != 'GONE'

我得到 11 个结果

SELECT [SlpName], [Memo] 
FROM OSLP

我得到 20 个结果???

"Joes" 记录在最后一次查询中拉起,但在前两次中没有。这怎么可能?

另一个注意事项,当我 运行 查询时:

SELECT [SlpName], [Memo] 
FROM OSLP 
WHERE [SlpCode] > '0'

我得到 20 个结果???

我也尝试 运行使用 SELECT * FROM 进行相同的查询并得到相同的结果。

有没有可能是我的数据库损坏了?

试试这个:

SELECT [SlpName], [Memo] FROM OSLP WHERE [Memo] IS NOT NULL

这应该会给你 19 个结果。

看起来你有一行带有 NULL 备忘录值。 Null 既不等于任何东西,也不等于任何东西。这就是为什么您的 WHERE 子句不影响该特定行的原因。