文章目录
1 概述
1. 一般求和函数:聚合函数 | 列 + group by 列
(1) 聚合函数: count(1)、sum()、avg()、max()、min()
2. 高级分组函数:相当于多次 group by + union all,但效率更高 -- 若有 N 列
(1) grouping sets:单独分组,group by N 次
(2) rollup :累计累加,group by N + 1 次,有默认排序
(3) cube :交叉列表,group by 2^N 次,无默认排序,rollup 的扩展
3. 扩展列
(1) grouping : 判断列值是否为空(0:非空,1:空)
(2) grouping_id :非空列合计,grouping 的扩展(二进制,注意顺序)
(3) group_id() :标识重复组(0:第一次分组,1:重复分区,无入参)
2 分组函数
基础数据准备:
-- 人员信息表
create table person_info (
person_no number(5),
person_name varchar2(30),
sex varchar2(3),
money number(8),
work_location varchar2