我有两个表,两个表都包含数据集的唯一标识符。一张桌子有我需要的所有数据,包括电子邮件地址。另一个表大约有3,000行,其中某些记录具有不同的电子邮件地址。如何将这两个表与SQL结合使用,并简单替换第二个表中有记录的电子邮件地址,但保留第一个表中除电子邮件地址以外的所有数据?
答案 0 :(得分:1)
SELECT COALESCE(EMAIL2, EMAIL1)
FROM TABLE1 T1
LEFT JOIN TABLE2 T2
on T1.ID = T2.ID
这会将电子邮件地址设置为第二个表中的电子邮件(如果存在),否则将保留第一张表中的电子邮件地址。
答案 1 :(得分:0)
您要更新第一个表吗?如果是这样:
update table1 inner join table2
on table2.id = table1.id
set table1.email = table2.email
where table2.email is not null