读书人

一道题目如上

发布时间: 2013-01-28 11:49:56 作者: rapoo

一道题目如下

怎么让表格如上图1,变成如下图所示的结果
一道题目如上
创建图1的语句给出:


create table #tb
(ID int primary key,
Class nvarchar(max),
[Subject] nvarchar(max),
Score int)
insert into #tb values(1,'一(1)班','语文','98')
insert into #tb values(2,'一(1)班','数学','98')
insert into #tb values(3,'一(1)班','英语','98')
insert into #tb values(4,'一(2)班','数学','98')
insert into #tb values(5,'一(2)班','语文','98')
insert into #tb values(6,'一(2)班','英语','98')
insert into #tb values(7,'一(3)班','数学','98')
insert into #tb values(8,'一(3)班','语文','98')
insert into #tb values(9,'一(3)班','英语','98')
select * from #tb
sql
[解决办法]
select Class,max(case [Subject] when 'chinese'then Score else '0'end) AS chinese,
max(case [Subject] when 'math'then Score else '0'end) AS math,
max(case [Subject] when 'english'then Score else '0'end) AS english from #tb group by Class

读书人网 >SQL Server

热点推荐