給的表例如
表一:
stuID stuName
1 小明
2 小紅
表二:
stuID course Score
1 數學 97
1 語文 70
1 英語 88
2 數學 92
要求查詢結果為:
stuID stuName 語文 數學 英語
1 小明 70 97 88
2 小紅 92
類似下面這樣,下面語句沒有調測過。
select stuID,(select stuName from 表一 where 表一.stuID=t.stuID) stuName
from(
select sum(case course when '數學' then Score else 0 end) 數學
,sum(case course when '語文' then Score else 0 end) 語文
,sum(case course when '英語' then Score else 0 end) 英語,stuId
from 表二 group by stuId
)
另外,可參見http://blog.csdn.net/danielinbiti/article/details/44977749微博中寫的這種方式的過程