1

我正在使用 Sql server 2012

只是好奇是否有办法做这样的事情......

我的更新查询看起来像

UPDATE a 
SET a.TowerNumber=b.SiteNumber
FROM tower a 
INNER JOIN sites  b 
ON a.sitenumber = b.sitenumber

上线后我想做的事情是这样的

EDIT **select records that did not match the ON statement**

提前致谢

4

2 回答 2

2

ON此查询返回由于未满足(连接)条件而不会被更新触及的所有行。

SELECT *
  FROM tower
 WHERE sitenumber NOT IN
     (SELECT sitenumber
       FROM sites)
于 2013-06-28T20:38:30.640 回答
0

我认为您可以尝试使用INSTEAD OF触发器,然后使用该DELETED表。它应该包含在更新操作期间更新的行,因此您要关注的是初始表中的其余行(从表中选择不在DELETED表中的行)

于 2013-06-28T20:39:08.563 回答