SQL数据迁移

时间:2018-08-09 14:55:52

标签: sql excel database

我将使用插图来说明我的问题。 SQL迁移:

在所附的图像中有2个SQL表,表2引用了表1的主键。表1但是有很多重复项,因此我使用Excel删除了所有重复项,并将数据导入到具有一组新表的新表中ID。我现在必须像以前一样将表2导入新表并再次引用表1。现在在图像中,看起来很容易做到这一点,但是在消除了大约700个重复项之后,我正在处理2000行以上的数据库。除了手动编辑每行并匹配它们之外,还有其他任何方法可以快速完成。这是我第一次进行数据库迁移,但猜测那里有一种快速的方法。 Google搜索实际上没有任何结果。感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

要预览您需要从第二张表中删​​除的数据,请运行以下命令:

select * from names
where place_id NOT in (select id from places)

如果您对结果满意,可以运行

delete from names
where place_id NOT in (select id from places)

答案 1 :(得分:0)

将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
);