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
子句不影响该特定行的原因。
在我多年的编码生涯中,我感到很困惑。我在 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
子句不影响该特定行的原因。