汇总统计,如何自动计算统计结果的和

sunshine320 2010-04-10 01:07:24
我现在在做分类汇总统计,
例如:Select name,count(id) num from table1 group by name
结果为:
name num
aaaa 2
bbbb 3
cccc 7

我想获取汇总结果的和,就是自动计算累加值,生成以下结果:
name num
aaaa 2
bbbb 3
cccc 7
sum 12

不知道怎么写SQL语句?
...全文
93 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenhuizhouhb 2010-04-15
  • 打赏
  • 举报
回复
说明 tangren正解
chenhuizhouhb 2010-04-15
  • 打赏
  • 举报
回复
cube是oracle group by的扩展用法,rollup,和grouping,having都在其中,解决你的问题最好用这个
Select name,count(id) num
from table1
group by rollup(name)
order by name
guokooo 2010-04-11
  • 打赏
  • 举报
回复
2楼好像很厉害哦
Leshami 2010-04-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 java3344520 的回复:]

Select name,count(id) num
from table1
group by CUBE(name)
ORDER BY NAME
[/Quote]
up
siakang 2010-04-10
  • 打赏
  • 举报
回复
楼上较严谨些
tangren 2010-04-10
  • 打赏
  • 举报
回复
with tt as(
select 1 id, 'a' name from dual union all
select 2 id, 'a' name from dual union all
select 3 id, 'b' name from dual union all
select 4 id, 'b' name from dual union all
select 5 id, 'b' name from dual union all
select 6 id, 'c' name from dual union all
select 7 id, 'c' name from dual union all
select 8 id, 'c' name from dual union all
select 9 id, 'c' name from dual union all
select 10 id, 'c' name from dual union all
select 11 id, 'c' name from dual union all
select 12 id, 'c' name from dual)
SELECT nvl(NAME, 'sum') NAME, COUNT(id) num FROM tt GROUP BY ROLLUP(NAME);
sylar09 2010-04-10
  • 打赏
  • 举报
回复
新手请教:2楼的group by CUBE(name)怎么理解?
xman_78tom 2010-04-10
  • 打赏
  • 举报
回复

Select (case grouping(name) when 1 then 'sum' else name end) name, count(id) num
from table1 group by cube(name) order by num
碧水幽幽泉 2010-04-10
  • 打赏
  • 举报
回复
楼上两位都对,但是1楼好些!
Adebayor 2010-04-10
  • 打赏
  • 举报
回复
Select name,count(id) num from table1 group by name
union all
select 'sum',count(id) from table1
;
iqlife 2010-04-10
  • 打赏
  • 举报
回复
Select name,count(id) num
from table1
group by CUBE(name)
ORDER BY NAME

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧