请问怎样用SQL语句分组 按照 [类型]来分组 小计 ,比如同一个类型的就分一组小计[金额],最后就总计
如:idnamenoKindjineclass1a34语文2342b34语文34re3h4语文12fd4d55语文23er5k54数学45er6f3数学64fd7g2英语...
如:
id name no Kind jine class
1 a 34 语文 23 4
2 b 34 语文 34 re
3 h 4 语文 12 fd
4 d 55 语文 23 er
5 k 54 数学 45 er
6 f 3 数学 64 fd
7 g 2 英语 43 v
8 r 4 英语 11 df
想用语句分组小计【jine】后结果:
id name no Kind jine class
1 a 34 语文 23 4
2 b 34 语文 34 re
3 h 4 语文 12 fd
4 d 55 语文 23 er
小计: 92
5 k 54 数学 45 er
6 f 3 数学 64 fd
小计: 109
7 g 2 英语 43 v
8 r 4 英语 11 df
小计: 54
总计 276 展开
id name no Kind jine class
1 a 34 语文 23 4
2 b 34 语文 34 re
3 h 4 语文 12 fd
4 d 55 语文 23 er
5 k 54 数学 45 er
6 f 3 数学 64 fd
7 g 2 英语 43 v
8 r 4 英语 11 df
想用语句分组小计【jine】后结果:
id name no Kind jine class
1 a 34 语文 23 4
2 b 34 语文 34 re
3 h 4 语文 12 fd
4 d 55 语文 23 er
小计: 92
5 k 54 数学 45 er
6 f 3 数学 64 fd
小计: 109
7 g 2 英语 43 v
8 r 4 英语 11 df
小计: 54
总计 276 展开
展开全部
Select ID,name,no,
(Case When Kind Is null And ID Is Null Then '总计:'
When ID Is Null Then '小计:' Else Kind End) As Kind,
Sum(jine) jine,class
From 表名
Group By Grouping Sets((id,name,no,kind,class),(kind),())
(Case When Kind Is null And ID Is Null Then '总计:'
When ID Is Null Then '小计:' Else Kind End) As Kind,
Sum(jine) jine,class
From 表名
Group By Grouping Sets((id,name,no,kind,class),(kind),())
追问
你好,你这个语句有错哦。
消息 102,级别 15,状态 1,第 6 行
'Sets' 附近有语法错误。
追答
你用的是什么数据库?好像是sql server 2005 或以上才可以用这个语句的。
来自:求助得到的回答
展开全部
select kind,jine,sum(jine),grouping(kind) from 表名 group by kind,jine with ROLLUP 这么写就可以了
追问
这样不行哦,class,name,no 三个列都没包进去
追答
select class,name,no,kind,jine,sum(jine),grouping(kind),grouping(class),grouping(name),grouping(no) from 表名
group by kind,jine,class,name,no with ROLLUP
having grouping(kind)=grouping(class) and grouping(class)=grouping(name) and grouping(name)=grouping(no) or jine is null
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询