一张表有5000万条以上的记录,要求insert到另外一张表里,什么方法最快?
一张表有5000万条以上的记录,要求insert到另外一张表里,什么方法最快? 问题点数:0、回复次数:7Top
1 楼juren250()回复于 2005-06-03 16:57:56 得分 0
如果是多CPU的话
insert /*+parallel(n) */ into b
select * from a; 其中N表示CPU的数量。
如果不是
insert into /*+append */ into b
select * from a;Top
2 楼juren250()回复于 2005-06-03 16:59:33 得分 0
补充一下,在操作1之前需要先设置一下SQL执行环境
alter session enable paralell dml;Top
3 楼flhyp()回复于 2005-06-03 17:04:39 得分 0
select into
Top
4 楼learn920()回复于 2005-06-03 18:51:10 得分 0
好像并行操作是全表扫描的情况下才有效的Top
5 楼learn920()回复于 2005-06-03 18:51:35 得分 0
那如果5亿呢,50亿呢
一条insert语句啊?Top
6 楼learn920()回复于 2005-06-04 09:33:52 得分 0
upTop
7 楼skystar99047(天星)回复于 2005-06-04 10:03:42 得分 0
写个存储过程,用游标执行遍历查询,将数据插入目标表,做个计数器,分批提交数据,如一万条提交一次。Top




