日期:2014-05-18 浏览次数:20645 次
CREATE TABLE [student] (
[id] [int] IDENTITY (1, 1) NOT NULL,
[学生] [varchar] (50) NULL,
[科目] [varchar] (50) NULL,
[分数] [int] NULL,
[学期] [varchar] (50) NULL,
[学号] [varchar] (50) NULL)
ALTER TABLE [student] WITH NOCHECK ADD CONSTRAINT [PK_student] PRIMARY KEY NONCLUSTERED ( [id] )
SET IDENTITY_INSERT [student] ON
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 1,N'甲',N'语文',88,N'1',N'001')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 2,N'甲',N'英语',77,N'1',N'001')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 3,N'甲',N'数学',66,N'1',N'001')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 4,N'乙',N'语文',100,N'1',N'002')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 5,N'乙',N'英语',90,N'1',N'002')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 6,N'乙',N'数学',80,N'1',N'002')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 7,N'甲',N'语文',88,N'1',N'003')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 8,N'甲',N'英语',77,N'1',N'003')
INSERT [student] ([id],[学生],[科目],[分数],[学期],[学号]) VALUES ( 9,N'甲',N'数学',66,N'1',N'003')
;with t
as(
select 学生,科目,分数,学期,学号,学号 as id
from [student]
),
m as(
select 合计='合计',col2='',SUM(分数)as 分数,
col3='',col4='',学号 from [student]
group by 学生,学号,学期,学号
)
select 学生,科目,分数,学期,学号 from(select * from t
union all select * from m)a order by id,学生 desc
/*
学生 科目 分数 学期 学号
甲 语文 88 1 001
甲 英语 77 1 001
甲 数学 66 1 001
合计 231
乙 语文 100 1 002
乙 英语 90 1 002
乙 数学 80 1 002
合计 270
甲 语文 88 1 003
甲 英语 77 1 003
甲 数学 66 1 003
合计 231
*/
解决了