3

这是一个理论场景,当涉及到大型 SQL 数据库时,我不仅仅是业余爱好者......

我将如何将大约 200 万条记录插入现有数据库中的 600 万条记录(表 1 到表 2),同时使用电子邮件重复数据删除(站点 2 中可能已经存在一些订阅者,但我们不想插入那些已经存在)?

我了解如何简单地从站点 1 获取记录并将它们添加到站点 2,但是我们如何在如此大规模的情况下执行此操作,并且不会导致数据重复?任何阅读资源都会对我有帮助,因为我发现这是一场斗争。

即: 表1:site1Subscribers

site1Subscribers(subID, subName, subEmail, subDob, subRegDate, subEmailListNum, subThirdParties)

表 2:site2Subscribers

site2Subscribers(subID、subName、subEmail、subDob、subRegDate、subEmailListNum、subThirdParties)

4

1 回答 1

3

我会尝试这样的事情:

insert into site2Subscribers
select * from site1Subscribers s1
left outer join site2Subscribers s2
    on s1.subEmail = s2.subEmail
where s2.subEmail is null;

left outer join空检查一起将仅返回那些在site1Subscribers中没有匹配条目的行site2Subscribers

于 2012-12-12T11:15:19.097 回答