读书人

求一分组汇总语句解决思路

发布时间: 2012-01-28 22:06:14 作者: rapoo

求一分组汇总语句
有如下记录:

classroom student sex
一班     张三  男
二班     李四  男
一班     王五  女
一班     老六  男

分别统计出 男女数
显示:
班级 男生数 女生数
一班  3   1
二班  1   0

sql语句如何写呢?

[解决办法]
楼主答案好像有点问题
--------------------------------------------
create table tb(classroom varchar(10),student varchar(10),sex varchar(10))
insert into tb select '一班 ', '张三 ', '男 '
union all select '二班 ', '李四 ', '男 '
union all select '一班 ', '王五 ', '女 '
union all select '一班 ', '老六 ', '男 '
go

select
班级=classroom,
男生数=sum(case sex when '男 ' then 1 else 0 end),
女生数=sum(case sex when '女 ' then 1 else 0 end)
from
tb
group by classroom
order by classroom collate Chinese_PRC_Stroke_CI_AS


drop table tb
[解决办法]
Select
Classroom As 班级,
Sum(Case Sex When '男 ' Then 1 Else 0 End) As 男生数,
Sum(Case Sex When '女 ' Then 1 Else 0 End) As 女生数
From 表
Group BY Classroom
Order BY Classroom Collate Chinese_PRC_Stroke_CI_AS

读书人网 >SQL Server

热点推荐