2012-05-06 41 views
1

我有類似的問題,發佈在鏈接SQL - columns for different categories。我有學生名單,學生名稱,中期成績和最終成績,如下面的GradeTable所示。使用group by by對數據進行分類

StName MidTermGrade FinalGrade 
St1   1    1 
St2   2    1 
St3   2    3 
St4   1    3 
St5   1    1 
St6   2    3 
St7   2    2 
St8   1    1 
St9   2    2 
St10  2    3 
St11  3    1 
St12  2    1 
St13  3    3 
St14  3    2 
St15  1    2 

該數據需要使用SQL查詢來生成輸出,使所有的分級和學生姓名落在一個查詢輸出,我可以在Word/Excel中粘貼,並提供它作爲報告進行分類。

FinalGrade MidTermGrade1 MidTermGrade2 MidTermGrade3 
    1  St1    St2    St11 
    1  St5    St12  
    1  St8  
    2  St15   St7    St14 
    2      St9 
    3  St4    St3    St13 
    3  St6 
    3      St10  

請幫助和建議,如果這可以實現。

+1

你在使用什麼樣的數據庫? MySQL,MSSQL ..? – barsju

+0

我不明白。該專欄表示midtermgrade1,但它似乎包含一個學生姓名。你能更好地描述你想要的嗎? –

+0

該數據庫是MS SQL。 – Raghu

回答

0

不要以爲很容易/可能得到你所需要的,但也許這是不夠好:

select FinalGrade, MidtermGrade, group_concat(StName) from GradeTable group by FinalGrade, MidtermGrade; 

然後你就可以輕鬆地完成剩下的代碼..?