Sql 为什么[表][列]!=null不工作?
为什么Sql 为什么[表][列]!=null不工作?,sql,sql-server,sql-server-2012,isnull,Sql,Sql Server,Sql Server 2012,Isnull,为什么从[table]中选择*where[table].[column]!=null不适用于我的查询,结果为空 但是,select*from[table],其中[table].[column]不为空正在工作,并查找[table].[column]用null填充的记录 !=在Microsoft SQL Server中为null且不是null?数据库中的null不是值。它的意思是“未知”或“数据丢失” 您无法判断您没有任何相关信息的内容是否等于您也没有相关信息的其他内容(=,!=运算符)。但是您可以
从[table]中选择*where[table].[column]!=null
不适用于我的查询,结果为空
但是,select*from[table],其中[table].[column]不为空
正在工作,并查找[table].[column]
用null
填充的记录
!=在Microsoft SQL Server中为null且不是null
?数据库中的null
不是值。它的意思是“未知”或“数据丢失”
您无法判断您没有任何相关信息的内容是否等于您也没有相关信息的其他内容(=
,!=
运算符)。但是您可以说是否有任何可用信息(为NULL
,不为NULL
)
嗯,实际上它不是很有用。但是它是这样的,并且有很长的历史。你不能用=
操作符与NULL进行比较,因为NULL意味着未知的值,所以你不能将某物等同于某个未知的值。这就是为什么提供了isnull
子句来筛选出列为NULL
的行
阅读有关SQL Server中的详细信息 不为空
返回记录填写null
不为空
是标准值,您无法将null
与进行比较=代码>无法与非值的内容进行比较。NULL表示没有值。你不能把什么都比不上什么。为空
或不为空
表示有值
或没有值
。