Oracle分组小计、总计示例(grouping sets的使用)
来源:互联网 发布:逐浪cms开源吗 编辑:程序博客网 时间:2024/04/28 14:04
1.首先创建一个表 - create table TE
- (
- ID VARCHAR2(2),
- T_CODE VARCHAR2(4),
- T_NAME VARCHAR2(4),
- T_AMOUNT INTEGER,
- T_DEPT VARCHAR2(4),
- T_PROJECT VARCHAR2(4),
- T_TYPE VARCHAR2(1)
- )
2.录入数据如下:
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('1', '1', '1', 10, '总部', '90', '0');
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('2', '2', '2', 20, '总部', '70', '0');
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('3', '3', '3', 30, '分1', '60', '0');
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('4', '4', '4', 40, '分1', '50', '0');
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('5', '5', '5', 50, '分2', '40', '0');
- insert into te (ID, T_CODE, T_NAME, T_AMOUNT, T_DEPT, T_PROJECT, T_TYPE)
- values ('6', '6', '6', 60, '分2', '30', '0');
3.查询全表查看
- select * from te;
4.用t.t_dept, t.t_project进行分组查询
- select t.t_dept, t.t_project, sum(t.t_amount) from te t
- group by t.t_dept, t.t_project;
结果如下:
5.用t.t_dept, t.t_project,并使用t.t_dept来做小计
- select t.t_dept, t.t_project, sum(t.t_amount) from te t
- group by grouping sets ((t.t_dept, t.t_project), t.t_dept);
结果如下:
6.用t.t_dept, t.t_project,并使用t.t_dept来做小计,并做一次总计
- select t.t_dept, t.t_project, sum(t.t_amount) from te t
- group by grouping sets ((t.t_dept, t.t_project), t.t_dept, null);
结果如下:
7.使用grouping(字段)
- select grouping(t.t_dept),t.t_dept, t.t_project, sum(t.t_amount) from te t
- group by grouping sets ((t.t_dept, t.t_project), t.t_dept, null);
结果如下:
注意: 在存储过程中null不会正确执行 需要改成()
如
0 0
- Oracle分组小计、总计示例(grouping sets的使用)
- Oracle分组小计、总计示例(grouping sets的使用)
- oracle 高级分组 GROUPING SETS
- oracle 显示多个分组的统计结果 GROUPING SETS
- MySQL的分组小计再总计解决方案
- Oracle中用GROUPING SETS分组自定义汇总
- Oracle分组函数 rollup、cube、grouping sets、grouping、grouping_id
- oracle 小计合计之 group by grouping sets
- GROUPING SETS分组集
- GROUP BY中ROLLUP/CUBE/GROUPING/GROUPING SETS使用示例
- GROUP BY中ROLLUP/CUBE/GROUPING/GROUPING SETS使用示例
- GROUP BY中ROLLUP/CUBE/GROUPING/GROUPING SETS使用示例
- Oracle数据分组:group by,having,rollup,cube,grouping sets
- 如何在Oracle中用GROUPING SETS分组自定义汇总
- oracle 11g:高级分组:rollup,cube,grouping sets
- Jarno详解Oracle高级分组函数(ROLLUP, CUBE, GROUPING SETS)
- Oracle分组查询3——grouping sets
- Oracle grouping和grouping sets
- tomcat内存配置(tomcat内存溢出)
- 奔跑在爱情的高速路上
- 如何让你的ios app成为最美的应用开发教程
- Android通讯录模糊匹配搜索实现(号码、首字母、简拼、全拼)
- C++ 零碎
- Oracle分组小计、总计示例(grouping sets的使用)
- VS2010中引用Web服务差别
- 判断元素出现的次数、总和
- Eclipse中jsp页面编译报错问题解决
- Android 自定义控件
- bugfree数据导出和导入
- 也大话设计模式
- OpenGL04
- 大数阶乘问题