如果表B_A
中的电子邮件地址不同,我正在尝试将表格A
中的电子邮件地址更新为表格B_A
。
我正在尝试的查询是:
A
我的错误是:
UPDATE A
SET Email = ( select [Email Address] from [B_A] where A.Email <> [B_A].[Email_Address])
where A.ID = [B_A].[ID]
如何规范化此查询以运行?
答案 0 :(得分:0)
您的问题看起来好像是在外部查询中引用内部查询中的表。外部语句不知道B_A表,因为您只在内部表上定义。
您可以尝试这样的事情:
UPDATE A
JOIN B_A on A.id = B_A.id
SET A.email = B_A.email
WHERE A.email <> B_A.email
不确定SQL Server中是否有UPDATE JOIN可用,但该语法适用于其他dbs。