27,579
社区成员
发帖
与我相关
我的任务
分享
use Tempdb
go
--> --> 中国风(Roy)生成測試數據
if not object_id(N'Tempdb..#成绩表') is null
drop table #成绩表
Go
Create table #成绩表([考试名称] nvarchar(23),[学生学号] int,[班级] int,[分数1] int,[分数2] int,[分数3] int,[总分] int)
Insert #成绩表
select N'第一次',123,1,90,90,90,270 union all
select N'第一次',123,1,90,90,90,270 union all
select N'第一次',123,1,90,90,90,270 union all
select N'第一次',123,1,90,90,90,270 union all
select N'第一次',123,2,80,80,90,250 union all
select N'第一次',123,2,90,90,90,270 union all
select N'第一次',123,2,90,90,90,270 union all
select N'第一次',123,2,90,90,90,270
Go
SELECT [考试名称]
, [班级]
, AVG([分数1] * 1.0) AS [分数1]
, AVG([分数2] * 1.0) AS [分数2]
, AVG([分数3] * 1.0) AS [分数3]
, AVG([总分] * 1.0) AS [总分]
FROM #成绩表
GROUP BY [班级]
, [考试名称];
/*
考试名称 班级 分数1 分数2 分数3 总分
第一次 1 90.000000 90.000000 90.000000 270.000000
第一次 2 87.500000 87.500000 90.000000 265.000000
*/