您的位置:首页 > 数据库 > Oracle

Oracle中的分组group by rollup/cube

2016-04-26 10:18 435 查看
众所周知group by 是数据库用来分组的关键字,而rollup/cube 关键字却被忽略。


ROLLUP,是GROUP BY子句的一种扩展,可以为每个分组返回小计记录以及为所有分组返回总计记录。

CUBE,也是GROUP BY子句的一种扩展,可以返回每一个列组合的小计记录,同时在末尾加上总计记录。

GROUPING 是一个聚合函数,它产生一个附加的列,当用 CUBE 或 ROLLUP 运算符添加行时,附加的列输出值为1,当所添加的行不是由 CUBE 或 ROLLUP 产生时,附加列值为0。

GROUPING:当column_name 列为附加值为1时该列显示‘合计。’

CASE GROUPING(column_name ) WHEN 0 THEN column_name ELSE ‘合计’ END ,

还有group by……with rollup;

该文章只为自己记忆方法,具体可以参考前辈们在网上发布的例子:

/article/4902679.html

/article/6107851.html

http://honeybinshun.iteye.com/blog/1474242
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: