oralce 从2亿条记录中按条件统计出相关记录的合计--怎样写Sql语句--是否有特殊方法
有一个大的分区表A 大概2亿条记录,有全局索引,现在要将符号条件c1和c2的时间范围(有时间字段)在一个月内的记录做sum和group by统计出来,将结果插入到另外一张表
环境:oracle9204 /Redhatlinux As3.0
昨天统计了一种情况大概用了30分钟,但是今天换了个where条件执行了5个小时了还没有出结果,where条件中的情况基本相同只是条件字段的值变了一下,请问这是怎么回事?
另外:oracle在做大量数据统计的时候是否有特殊的方法?
问题点数:0、回复次数:7Top
1 楼shenqj(阿瑾)回复于 2005-04-03 22:28:20 得分 0
做聚簇索引Top
2 楼r9lu(一天到晚游泳的鱼)回复于 2005-04-03 23:09:29 得分 0
gzTop
3 楼simpleOra()回复于 2005-04-04 09:42:40 得分 0
用物化视图,启用查询重写功能
Top
4 楼and_you()回复于 2005-04-07 10:16:14 得分 0
gzTop
5 楼hippie1024(努力必有痕迹)回复于 2005-04-07 10:47:18 得分 0
既然你是分区表,又是按月在统计数据
就应该按月来分区,优化你的SQL,需要建议可以把执行计划贴出来。
每个月数据统计一次存储在另一张表中,这就是一个类似物化视图的操作了。
如果利用增量刷新的物化视图会有一些帮助。Top
6 楼wu6514(苏27)回复于 2005-04-07 14:41:06 得分 0
楼上说的有道理,按月份分区.Top
7 楼WilliamXiaoLiang(冷月靓)回复于 2005-04-07 19:17:58 得分 0
汗,Oracle有上兆的数据吗?Top




