在SQL Server中,null = null返回false(即使SET ANSI_NULLS为OFF)

时间:2015-02-17 05:32:29

标签: sql sql-server sql-server-2008 tsql join

我试过下面的代码。无论我们设置ansi nulls to on or off还是同样的结果。

create table A
(
id int identity not null,
name varchar null
)

create table B
(
id int identity not null,
name varchar null
)

insert into A (name) values ('a')
insert into B (name) values ('b')
insert into A (name) values (null)
insert into B (name) values (null)

set ansi_nulls off
select A.name, B.name from A join B on A.name = B.name

set ansi_nulls on
select A.name, B.name from A join B on A.name = B.name

结果集:  --None -

两者似乎都在返回空行。

如果我执行SET ANSI_NULLS OFF,它应该比较null=null并返回true,正确吗?

有谁可以告诉为什么没有返回结果?

0 个答案:

没有答案