SQL> select decode(grouping_id(region, no, name,memo), 0, no, 7, '小计', 15, '总计') no,
2 decode(grouping_id(region, no, name,memo), 7, nvl(region,'未知行业'), 15, '所有行业', na
me) name,
3 sum(content),
4 memo
5 from t
6 group by rollup(region, no, name,memo)
7 having grouping_id(region, no, name,memo) in (0, 7, 15);NO NAME SUM(CONTENT) MEMO
---- -------------------- ------------ --------------------
007 钢铁1 10 g
008 20 h
小计 未知行业 30
001 电子公司1 11 a
002 电子公司2 22 b
005 电厂3 55 e
小计 电子 88
003 化工厂1 33 c
004 化工厂2 44 d
006 化工厂3 66 f
小计 化工 143NO NAME SUM(CONTENT) MEMO
---- -------------------- ------------ --------------------
总计 所有行业 261已选择12行。
2 decode(grouping_id(region, no, name,memo), 7, nvl(region,'未知行业'), 15, '所有行业', na
me) name,
3 sum(content),
4 memo
5 from t
6 group by rollup(region, no, name,memo)
7 having grouping_id(region, no, name,memo) in (0, 7, 15);NO NAME SUM(CONTENT) MEMO
---- -------------------- ------------ --------------------
007 钢铁1 10 g
008 20 h
小计 未知行业 30
001 电子公司1 11 a
002 电子公司2 22 b
005 电厂3 55 e
小计 电子 88
003 化工厂1 33 c
004 化工厂2 44 d
006 化工厂3 66 f
小计 化工 143NO NAME SUM(CONTENT) MEMO
---- -------------------- ------------ --------------------
总计 所有行业 261已选择12行。
解决方案 »
- 大家在公司中,oracle外部表用的多吗?
- oracle 触发器求助~
- 一道题目
- 达人请问SQL,A表数据入B表
- 请问一个权限问题
- oracle 如何实现类似 sqlserver的 instead of 触发器?
- oracle入门问题,请近来看看!
- ORACLE的服务都启动了,可连数据库时发生"oracle not available"
- 请教 select * 和 select count(*)的执行区别
- sqlca报出-31的错,请问这是什麽错?
- 求救!!!!一个sql递归语句问题,大家有兴趣可以自己生成一下这个表,,,,自己测试一下。。。。
- 在AIX5.1上安装ORACLE9i,出现ORA-04030错误。
有没有办法能显示成如下格式呢?
NO NAME SUM(CONTENT) MEMO
---- -------------------- ------------ --------------------
1 007 钢铁1 77 g
2 008 88 h
小计 未知行业 165
1 001 电厂1 11 a
2 002 电厂2 22 b
3 005 电厂3 55 e
小计 电子 88
1 003 化工厂1 33 c
2 004 化工厂2 44 d
3 006 化工厂3 66 f
小计 化工 143
总计 所有行业 396就是在显示的结果的时候在前面加上一列
ids,
2 no,
3 decode(grouping_id(region, ids, no, name,memo), 15, nvl(region,'未知行业'), 31, '所有行
业', name) name,
4 sum(content),
5 memo
6 from (select t.*,row_number() over(partition by region order by no) ids from t)
7 group by rollup(region, ids, no, name,memo)
8 having grouping_id(region, ids, no, name,memo) in (0, 15, 31); IDS NO NAME SUM(CONTENT) MEMO
-------------------- --- -------------------- ------------ --------------------
1 007 钢铁1 10 g
2 008 20 h
小计 未知行业 30
1 001 电子公司1 11 a
2 002 电子公司2 22 b
3 005 电厂3 55 e
小计 电子 88
1 003 化工厂1 33 c
2 004 化工厂2 44 d
3 006 化工厂3 66 f
小计 化工 143
总计 所有行业 261已选择12行。