假设我有两个名为aTable1,aTable2的表
aTable1将userID设置为identity并包含以下数据:
userID email FirstName LastName
1 NULL C CC
2 NULL D DD
3 a@yahoo.com A AA
4 b@yahoo.com B BB
5 e@yahoo.com E EE
6 f@yahoo.com NULL NULL
7 g@yahoo.com NULL NULL
Run Code Online (Sandbox Code Playgroud)
aTable2包含以下数据:
userID email FirstName LastName Title
3 a@yahoo.com A AA student
4 b@yahoo.com B BB student
5 e@yahoo.com E EE student
NULL NULL C CC dean
NULL NULL D DD advisor
NULL f@yahoo.com NULL NULL student2
NULL g@yahoo.com NULL NULL student3
Run Code Online (Sandbox Code Playgroud)
我想基于aTable1更新aTable2.userID,但知道2个表中有空值,所以我喜欢这样:
set ANSI_NULLS off
update aTable2
set aTable2.userID = a.userID
from aTable a, aTable2 b
where a.FirstName = b.FirstName and a.LastName = b.LastName and a.email = b.email
Run Code Online (Sandbox Code Playgroud)
但是,此更新不会更新所有userID,事实上,它只更新那些电子邮件不等于null的那些,但我已经将ANSI_NULLS设置为off.我做错了什么?
归档时间: |
|
查看次数: |
204 次 |
最近记录: |