oracle group by的扩展

1、rollup

select job,sum(sal) from emp group by rollup(job);

将增加一行总的合计数。

2、cube

select job,deptno,sum(sal) from emp group by cube(job,deptno);

先按job和deptno的各种组合进行sum,最后一行为总合计数。

3、grouping

select job,grouping(job),sum(sal) from emp group by rollup(job);

若job不为空返回0,为空值则返回1,

可据此判断是否为总合计行,也可用作order by。

猜你喜欢

转载自23497465-qq-com.iteye.com/blog/2238253