SQL Server:不喜欢(<>)隐藏空值

时间:2017-10-10 13:18:07

标签: sql-server sql-server-2012

我有这个问题:

material.transparent = true

它返回没有Name ='John'的所有内容,但它不会按预期返回空值。我怎么解决这个问题?

3 个答案:

答案 0 :(得分:3)

添加OR Table1.Name IS NULL支票

select * 
from Table1 
where Table1.Name <> 'John' 
      OR Table1.Name IS NULL

答案 1 :(得分:2)

这是因为每个具有null值的操作都会返回false。试试

where IsNull(Table1.Name, '') <> 'John'

答案 2 :(得分:1)

select * from Table1 where Table1.Name is null or Table1.Name <> 'John'