为什么SQL Server不能返回空值?

时间:2017-03-22 02:57:48

标签: sql-server-2016

SELECT * 
FROM [dbo].[drugTP] 
WHERE [DrugRate] IS NULL 

enter image description here

当我运行此查询时,SQL Server返回一个空网格,为什么?

1 个答案:

答案 0 :(得分:0)

列中的值可能不是“NULL”值,而是空字符串。

您可以尝试匹配空字符串

SELECT * 
FROM [dbo].[drugTP] 
WHERE [DrugRate] IS NULL or [DrugRate] = ''

或使用函数NULLIF,如果两个参数相等则返回NULL

SELECT * 
FROM [dbo].[drugTP] 
WHERE NULLIF([DrugRate],'') IS NULL