日期:2014-05-17  浏览次数:20648 次

数据处理,数据变向
有些数据是这样在数据库中的
学号 科目 成绩 
123 数学 80
123 语文 70
124 数学 90
124 语文 70
我想在页面显示出来这样的数据
学号 数学 语文
123 80 70
124 90 70
求指点

------解决方案--------------------
select s.xh,
sum(CASE when s.xk='数学' then s.xf end) as 数学 ,
sum(CASE when s.xk='语文' then s.xf end) as 语文 
from ttt s
group by s.xh


字段含义:
xh(123,124),xk(数学,语文),xf(学分)
------解决方案--------------------
SELECT id,SUM(CASE WHEN subjectName='数学' THEN score END) AS 数学,
SUM(CASE WHEN subjectName='语文' THEN score END) AS 语文 FROM exam GROUP BY id;