惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
大猫的无限游戏
大猫的无限游戏
J
Java Code Geeks
罗磊的独立博客
雷峰网
雷峰网
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
爱范儿
爱范儿
B
Blog RSS Feed
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
D
Docker
Recent Announcements
Recent Announcements
T
Tailwind CSS Blog
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Vercel News
Vercel News
小众软件
小众软件
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
I
InfoQ
S
SegmentFault 最新的问题

博客园 - Oracle

JS key大全 JS事件 ORACLE中搜索任意字符串 Oracle's Query Transformer Oracle的几个优化模式 Linux中sar命令 Oracle 复制 DUMP块的分析 enqueue_stats.sql enqueue_locks.sql latch_sleeps.sql latch_spin.sql latch_get.sql latch_types.sql trace_waits.sql session_waits.sql resource_waits.sql routine_waits.sql hidden_parameters.sql all_parameters.sql
oracle 中grouping函数的应用
Oracle · 2009-03-13 · via 博客园 - Oracle

select * from test

1 00 001 大 5 15
2 00 001 中 25 75
3 00 001 小 85 25
4 00 002 大 65 35
5 00 002 中 95 85
6 00 002 小 85 25
7 01 001 大 16 14
8 01 001 中 290 75
9 01 001 小 83 22


SELECT num
      ,flg
      ,(CASE WHEN GROUPING(num)=1 THEN 'TOTAL'
             WHEN GROUPING(type)=1 THEN 'SUBTOTAL'
             ELSE type
        END)
      ,sum(number1)
      ,sum(number2)
  FROM test
GROUP BY ROLLUP(num,flg,type)
ORDER BY num NULLS LAST,flg,DECODE(type,'大',1,'中',2,'小',3,4);

1 00 001 大 5 15
2 00 001 中 25 75
3 00 001 小 85 25
4 00 001 SUBTOTAL 115 115
5 00 002 大 65 35
6 00 002 中 95 85
7 00 002 小 85 25
8 00 002 SUBTOTAL 245 145
9 00  SUBTOTAL 360 260
10 01 001 大 16 14
11 01 001 中 290 75
12 01 001 小 83 22
13 01 001 SUBTOTAL 389 111
14 01  SUBTOTAL 389 111
15   TOTAL 749 371