Oracle group by高级用法对比效果(ROLLUP、GROUPING SETS、CUBE)
Oracle group by高级用法对比效果(ROLLUP、GROUPING SETS、CUBE),今天主要跟大家演示一下,在同一组数据的情况下,每个SQL的执行结果。
一:普通的group by
二:加上ROLLUP
三:加上CUBE
四:加上GROUPING SETS
总结如下:
ROLLUP |
GROUP BY ROLLUP(A,B,C) |
首先对(A,B,C)进行GROUP BY,然后对(A,B)进行GROUP BY,然后是(A)进行GROUP BY, 最后对全表进行GROUP BY操作 |
CUBE |
GROUP BY CUBE(A,B,C) |
首先对(A,B,C)进行GROUP BY,然后依次对(A,B)、(A,C)、(A)、(B,C)、(B)、(C)进行GROUP BY,最后对全表进行GROUP BY操作。 |
GROUPING SETS |
GROUP BY GROUPING SETS(A,B,C) |
依次对(C)、(B)、(A)进行GROUP BY。 |
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: JAVA抽奖算法
- 下一篇: Linux环境下黑客常用嗅探器分析