Sql server 未在SQL Server 2008的选择列表中选择Null
有一个结构如下所示的表格。该表包含Sql server 未在SQL Server 2008的选择列表中选择Null,sql-server,sql-server-2008,sql-server-2008-r2,Sql Server,Sql Server 2008,Sql Server 2008 R2,有一个结构如下所示的表格。该表包含NULL值 用于选择NULL的查询 问题#1 问题2 但是,这两个查询都没有返回任何行 您只能使用IS NULL或IS NOT NULL将值与NULL进行比较,如下所示: select * from table where items1 IS NULL 您可以稍微改变一下行为,但不建议这样做。如需了解更多ifnormation,请参阅。如果不设置将ANSI_NULLS设置为OFF,则无法执行您尝试的操作。因为NULL在任何数据库中都是不同的东西。任何带有NU
NULL
值
用于选择NULL的查询
问题#1
问题2
但是,这两个查询都没有返回任何行 您只能使用IS NULL
或IS NOT NULL
将值与NULL
进行比较,如下所示:
select * from table where items1 IS NULL
您可以稍微改变一下行为,但不建议这样做。如需了解更多ifnormation,请参阅。如果不设置将ANSI_NULLS设置为OFF,则无法执行您尝试的操作。因为NULL
在任何数据库中都是不同的东西。任何带有NULL
的内容都将变为NULL
例如
偶数NULL返回False
例如
试试这个:
select * from table where items1 is NULL
或
编辑:
这并不准确:如果您将ANSI_NULLS
设置为OFF
,您的答案将明显错误。您的问题似乎有一些答案。我强烈建议你做一些关于规范化的阅读和研究。当你需要物品时,你打算做什么?
select * from table where items1 IS NULL
select NULL + 1 -- OUTPUT : NULL
select NULL + 'test' -- OUTPUT : NULL
select case when NULL=1 then 0 else 1 end -- return false hence 1
select case when NULL=0 then 1 else 0 end -- return false hence 0
select * from table where items1 is NULL
SET ANSI_NULLS OFF
select * from table where items1=null