我有一个包含40列的表'A'。我需要将来自'A'的20个特定列的数据复制到具有这20列的另一个表'B'。将有大约3千万到1千万条记录。 在PLSQL中执行此操作的最有效方法是什么。
答案 0 :(得分:1)
“每日表B将被截断,新数据将被插入其中 从A。“
好的,所以最有效的方法就是不要这样做。改为使用物化视图;表A上的物化视图日志将允许您捕获增量更改并每天应用它们,或者在您喜欢的任何其他窗口中应用它们。 Find out more
与使用手动PL / SQL(甚至纯SQL)的方法相比,可笑性低效。
答案 1 :(得分:0)
您是否需要对数据进行任何类型的转换,或者只是将数据直接从一个表复制到另一个表?
最简单的方法是,尽管您必须单独创建索引。
create table B as (select A.c1, A.c2, A.c3..... from A);
如果表格x已存在,则可以执行
insert into B select A.c1, A.c2.... from A
为了加快速度,你需要删除表x上的所有索引,直到插入完成。