如何删除依赖于其他表的数百万条记录

时间:2017-08-17 03:20:02

标签: sql oracle

我有三张桌子

表1,主键为Element_ID

表2,主键结构_ID

表3主键为MOD_ELEMENT,有两个外来的Element_ID(来自table1)和Structure_ID(来自表2)。

我从需要删除的查询中获取了Element_id和structure_id,因此我必须先删除表3中的数据,然后再删除另外两个表。要删除的记录总数超过1000万。

如果我要迭代要删除的值,使用游标将是一项昂贵的操作。

1 个答案:

答案 0 :(得分:0)

这会有用吗?

/ 删除table3中引用要删除的ID的任何数据 / 从table3中删除elementids中的Element_ID或structureids中的Structure_ID;

- 然后删除table2和table1数据 从table2中删除structureid中的Structure_ID;

从table1中删除elementids中的Element_ID;