insert into b as (select pid,sum(count) OVER(order by ) from a where rownum<10000); commit; insert into b as ((select pid,sum(count) OVER(order by ) from a where rownum<20000) minus (select pid,sum(count) OVER(order by ) from a where rownum<10000)); commit; insert into c as (select pid,sum(count) OVER(order by ) from b);不知道这个思路怎么样
不知道“后台过程”是个什么概念,就是说实现的思路是怎么样的?谢谢!TO:luxuezhu(卢冲)
我的那个更新要执行的操作其实和合并表里的重复数据项差不多,
所以我不知道这种情况可不可以分几次更新?谢谢!
可以分批进行更新呀,比如1000万的倍数时,就commit
因为UPDATE 是一条条数据
你通过你的语法控制即可
PID COUNT
01 2
02 4
03 1
02 5
01 2
处理完后要变成:
PID COUNT
01 4
02 9
03 1我现在还是有2个问题:
1、因为每处理一次都会涉及到整张表的记录,所以我不知道按什么规则去分段比较合适?
2、像Golden那种软件它在处理大量数据时是怎么做的?因为看服务器端的记录根本看不出什么不一样的地方
commit;
insert into b as
((select pid,sum(count) OVER(order by ) from a where rownum<20000)
minus
(select pid,sum(count) OVER(order by ) from a where rownum<10000));
commit;
insert into c as (select pid,sum(count) OVER(order by ) from b);不知道这个思路怎么样