在结果集后面增加一条合计记录,该如何解决
在结果集后面增加一条合计记录
有数据表Table,有字段 f1、f2、f3,表中有如下数据:
f1 f2 f3
设计室1 1 2
设计室2 1 0
设计室1 1 2
用下列语句:
select f1,sum(f2) f2,sum(f3) f3
from table group by f1
已经正确得到结果集:
f1 f2 f3
设计室1 2 4
设计室2 1 0
现在希望修改select语句,在结果集后面增加一条合计记录,使结果集是:
f1 f2 f3
设计室1 2 4
设计室2 1 0
合计 3 4
SQL语句是怎样的?
------解决方案--------------------
有数据表Table,有字段 f1、f2、f3,表中有如下数据:
f1 f2 f3
设计室1 1 2
设计室2 1 0
设计室1 1 2
用下列语句:
select f1,sum(f2) f2,sum(f3) f3
from table group by f1
已经正确得到结果集:
f1 f2 f3
设计室1 2 4
设计室2 1 0
现在希望修改select语句,在结果集后面增加一条合计记录,使结果集是:
f1 f2 f3
设计室1 2 4
设计室2 1 0
合计 3 4
SQL语句是怎样的?
------解决方案--------------------
- SQL code
select f1,sum(f2) f2,sum(f3) f3 from table group by f1 with rollup
------解决方案--------------------
select f1,sum(f2) f2,sum(f3) f3
from table group by f1
union
select '合计' as f1, sum(f2),sum(f3) from (select f1,sum(f2) f2,sum(f3) f3
from table group by f1)a group by f1
------解决方案--------------------
- SQL code
select f1,sum(f2) f2,sum(f3) f3 from table group by f1 union all select f1='合计',sum(f2) f2,sum(f3) f3 from table