Sql server 2012 具有重复记录的表中的Sql server更新查询
我想知道使用重复行进行更新时会发生什么情况,例如:Sql server 2012 具有重复记录的表中的Sql server更新查询,sql-server-2012,Sql Server 2012,我想知道使用重复行进行更新时会发生什么情况,例如: Table 1: Email StatusID Status phil@gmail.com NULL dome@yahoo.es 1 Busy phil@gmail.com 2 Online dome@yahoo.es NULL Table 2: Email Name
Table 1:
Email StatusID Status
phil@gmail.com NULL
dome@yahoo.es 1 Busy
phil@gmail.com 2 Online
dome@yahoo.es NULL
Table 2:
Email Name RejectionStatusID RejectionStatus
dome@yahoo.es Dome 1
phil@gmail.com Phil 2
结果如何
Update Table2
SET RejectionStatusID = StatusID,
RejectionStatus = Status
FROM Table2 Inner Join Table1
ON Table2.Email = Table1.Email
我想知道复制的是哪一个,为什么???不是很确定!!!当然,我做了询问,知道发生了什么,但为什么?只是想要一个解释。。。
谢谢
编辑:
这是一个例子,这就是空值的情况
来自BoL
如果UPDATE语句包含FROM子句,而FROM子句的指定方式没有使每次更新的列引用只有一个值可用,则UPDATE语句的结果是未定义的,即UPDATE语句是不确定的