日期:2014-05-16 浏览次数:20865 次
select 学号 , max(case when px = 1 then 科目 else '') 科目1, max(case when px = 1 then 成绩 else 0) 成绩1, max(case when px = 2 then 科目 else '') 科目2, max(case when px = 2 then 成绩 else 0) 成绩2 from ( select t.* , row_number() over(partition by 学号 order by 科目) px from tb t )m group by 学号
------解决方案--------------------
实测: