真正的专业问题待答
表A:
UserID varchar(50) //学生编码
ClassID varchar(50) //班级编码
UserName varchar(50) //姓名
TypeID varchar(50) //所属组
数据内容如下:
UserID ClassID UserName TypeID
1001 1 张三 10
1002 2 李四 11
1003 3 王五 12
1004 4 赵六 12
1006 3 韩七 11
1007 2 马八 13
表B:
ClassID varchar(50)
ClassName varchar(50)
数据内容如下:
ClassID ClassName
1 一班
2 二班
3 三班
4 四班
表C:
TypeID varchar(50)
TypeName varchar(50)
数据内容如下:
TypeID TypeName
10 第一组
11 第二组
12 第三组
13 第四组
现在的要求是统计出如下的表:
班级 第一组人数 第二组人数 第三组人数 第四组人数 合计
一班 1 1 2 1 5
二班 2 1 2 3 8
三班 1 3 1 1 6
四班 3 3 2 1 9
各位老大,这是我辛苦手工写出来的,很多系统统计经常用到的功能,但是大多数都是一个一个字段的统计,极费资源,大家好好看看,如何用最少的SQL实现,并达到最佳资源利用?
------解决方案----------------------楼主给的数据和你要的结果不对啊!
drop table 表A,表B,表C
go
create table 表A(UserID varchar(50),ClassID varchar(50),UserName varchar(50),TypeID varchar(50))
insert into 表A
select '1001 ', '1 ', '张三 '