2012-05-06 5 views
1

링크 SQL - columns for different categories에 게시 된 질문과 유사합니다. Student Name, Midterm Grade 및 Final Grade가있는 학생 표는 아래의 GradeTable에 표시되어 있습니다.SQL에서 그룹 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 쿼리를 사용하여 분류 할 필요가있다.

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

나는 그것을 얻지 않는다. 이 열에는 중급자 1이 나와 있지만 학생 이름이 포함 된 것으로 보입니다. 당신이 원하는 것을 더 잘 표현할 수 있습니까? –

+0

데이터베이스는 MS SQL입니다. – Raghu

답변

0

은 아마도 당신이 필요로하는 것을 얻을/쉽게 생각하지 마십시오,하지만 어쩌면이 충분 :

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

그런 다음 당신은 쉽게 코드로 나머지를 할 수 있습니다 ..?

관련 문제