导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

如何能形成这样的查询,就是既有每一条记录,最后还有合计啊?

zhangwei1437 2006-01-23 10:02:21
如:
表A bh sl
01 10
01 20
02 10
03 20
通过查询形成
编号 数量
01 30
02 10
03 20
合计 60
...全文
67 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoanle 2006-01-23
用cube

select bh,sum(sl) as sl from 表A group by bh with cube
回复
-狙击手- 2006-01-23
declare @t table(bh char(4),sl int)
insert @t
select '01',10 union all
select '01',20 union all
select '02',10 union all
select '03',20


select isnull(bh,'合计') as 编号 ,sum(sl) as 数量
from @t
group by bh with rollup

/*

编号 数量
---- -----------
01 30
02 10
03 20
合计 60

*/
回复
xifeng186 2006-01-23
select 编号=bh,数量=sum(isnull(sl,0)) from A group by bh
回复
-狙击手- 2006-01-23
select isnull(bh,'合计'),sum(sl) as 数量
from table
group by bh with rollup
回复
zhangwei1437 2006-01-23
举个离子吧
回复
mislrb 2006-01-23
select bh=isnull(bh,'合计'),
sl=sum(sl)
from 表A
group by bh with rollup
回复
shine 2006-01-23
用union,不但可以得总计,还可以分组后得分组的小计,再总计,非常灵活。
回复
白发程序猿 2006-01-23
select isnull(bh,'合计') as 编号 ,sum(sl) as 数量
from 表名
group by bh with cube
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告