我只想用一个插图来解释我的问题。SQL迁移:

在附加的图像中是2个SQL表,表2引用了表1的主键。但是,表1有许多重复项,因此我使用Excel删除了所有重复项,并将数据导入到具有新ID集的新表中。我现在必须将表2导入到一个新表中,并像以前一样再次引用表1。现在在图像中看起来很容易做到这一点,但我正在处理一个超过2000行的数据库,在消除了大约700个重复项之后。除了手动编辑每一行并匹配它们之外,是否有任何方法可以快速完成此操作。这是我第一次做数据库迁移,但我猜有一种快速的方法可以做到这一点。谷歌搜索并没有真正显示出任何结果。我很感谢在这方面的任何帮助。
发布于 2018-08-09 23:08:17
要预览需要从第二个表中删除的数据,请运行以下命令:
select * from names
where place_id NOT in (select id from places)如果你对结果满意,你可以运行
delete from names
where place_id NOT in (select id from places)发布于 2018-08-09 23:47:48
将table2复制到table2New之后
update table2New
set PlaceNameID = (select t1N.ID
from table2 as t2
join table1 as t1
on t1.ID = t2.PlaceNameID
join table1new as t1N
on t1.PlaceName = t1N.PlaceName
where table2New.ID = t2.ID
);https://stackoverflow.com/questions/51770222
复制相似问题