Oracle group by高级用法之rollup
2014-03-19 16:22
429 查看
最近一直给项目组的开发人员进行SQL优化,发现他们对一些group by的高级都不是太会用。今天我就做几个测试,来演示rollup的用途。
Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句。如果是ROLLUP(A, B, C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行GROUP BY,最后对全表进行GROUP BY操作。如果是GROUP BY CUBE(A, B, C),则首先会对(A、B、C)进行GROUP
BY,然后依次是(A、B),(A、C),(A),(B、C),(B),(C),最后对全表进行GROUP BY操作。这个介绍是网上看到的,引用下 哈哈。
上面是基本的group by 大家好看数据结构啊
通过上面的2个例子。我们可以清楚的看到roll的规律了吧
那么rollup的效率怎么样呢,看看执行计划吧
执行计划的效率还是不错的
Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句。如果是ROLLUP(A, B, C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP BY,然后是(A)进行GROUP BY,最后对全表进行GROUP BY操作。如果是GROUP BY CUBE(A, B, C),则首先会对(A、B、C)进行GROUP
BY,然后依次是(A、B),(A、C),(A),(B、C),(B),(C),最后对全表进行GROUP BY操作。这个介绍是网上看到的,引用下 哈哈。
上面是基本的group by 大家好看数据结构啊
通过上面的2个例子。我们可以清楚的看到roll的规律了吧
那么rollup的效率怎么样呢,看看执行计划吧
执行计划的效率还是不错的
相关文章推荐
- Oracle group by高级用法对比效果(ROLLUP、GROUPING SETS、CUBE)
- oracle group by rollup用法详解
- Oracle Group By 用法之 —— Rollup
- Oracle Group By 用法之 —— Rollup
- group by cube,rollup, grouping set的用法
- Oracle group by 用法实例详解
- oracle GROUP BY rollup
- Oracle group by 用法实例详解
- Oracle group by 用法实例详解
- oracle group by的用法
- Oracle Group By 用法之 —— Having
- Oracle高级查询之GROUP BY
- oracle group by rollup实现小计、合计
- oracle group by rollup,decode,grouping,nvl,nvl2,nullif,grouping_id,group_id,grouping sets,RATIO_TO
- Oracle group by 用法实例详解
- oracle group by中cube和rollup字句的使用方法及区别
- Group by all | with cube | with rollup 的3用法
- group by rollup和group by cube的用法和区别
- Oracle group by 用法实例详解
- oracle group by 的各种用法