日期:2014-05-18 浏览次数:20690 次
-- 科目表
if object_id('tblSubjectItem') is not null
    drop table tblSubjectItem;
go
create table tblSubjectItem
(
    siID int,
    siName varchar(20)
)
insert into tblSubjectItem(siID, siName)values(1, '语文');
insert into tblSubjectItem(siID, siName)values(2, '数学');
insert into tblSubjectItem(siID, siName)values(3, '物理');
insert into tblSubjectItem(siID, siName)values(4, '英语');
insert into tblSubjectItem(siID, siName)values(5, '化学');
insert into tblSubjectItem(siID, siName)values(6, '生物');
-- 省略其他还有科目
go
-- 科目成绩单
if object_id('tblScoreResult') is not null
    drop table tblScoreResult
go
create table tblScoreResult
(
   [Name]    varchar(10) ,
   subjectID int ,
   Score  int                -- 0 白卷; -1 or null 缺考
)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 1 , 74)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 2 , 83)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 3 , 93)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 4 , 0)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 5 , -1)
insert into tblScoreResult([Name] , subjectID , Score) values('张三' , 6 , 88)
insert into tblScoreResult([Name] , subjectID , Score) values('李四' , 1 , 74)
insert into tblScoreResult([Name] , subjectID , Score) values('李四' , 2 , 84)
insert into tblScoreResult([Name] , subjectID , Score) values('李四' , 3 , 94)
go
/*
要求返回如下格式结果集
姓名         语文        数学        物理        英语        化学        生物     ...      平均分    总分
---------- ----------- ----------- ----------- ----------- ----------- -----------         ------- -------
李四         74          84          94          缺考        缺考        缺考              42        252
张三         74          83          93          白卷        缺考        88                56.33     338
*/