我有如下的报告表: Report(StudentName,SubJectName,Mark)和下面的示例数据
StudentName    |    SubjectName   |  Mark
Tommy               A                6
Tommy               B                8
Tommy               C                10
Susan               A                7
Susan               B                10所以我想查询并显示如下:
SubjectName  | A | B |  C
Tommy          6   8    10
Susan          7   10   0你能建议我怎么做吗?我研究了pivot,但我不知道如何应用?
提前感谢!
发布于 2014-05-12 20:22:39
使用case语句
select studentname,
max(case when subjectname='A' then mark else 0 end) 'A',
max(case when subjectname='B' then mark else 0 end) 'B',
max(case when subjectname='C' then mark else 0 end) 'C'
from table1
group by studentnamefiddle
https://stackoverflow.com/questions/23608825
复制相似问题