소스 테이블 :SQL 서버 PIVOT 도움
Create Table ExamAnswers
{
StudentID varchar(12),
QuestionID int,
Answer char(1)
}
는이 약 500 학생들을 위해,
Bob 1 a
Bob 2 c
...
Bob 100 b
Chris 1 c
Chris 2 d
...
Chris 100 null
등으로 채워집니다.
Chris는 시험을 끝내지 않았지만 100 번째 질문은 null로 저장되므로 각 학생의 행 수가 정확히 100 개이지만 실제 대답은 null 또는 문자로 보장됩니다. 그것은 어떤 차이가 있는지
, 응답은 {A, B, C, D, E는, F}
이 설정은 실제 시험 프로그램에 대해 잘 작동에 있고, 사소한 마킹.
는 지금은 감사 목적을 위해, 나는이 보이는 테이블 생성해야한다는 것을,보고 요구 사항이 :
ID 1 2 ... 100
Bob a c ... b
Chris c d ....null
그래서 나는 PIVOT 기능에 대한 책을 읽은 반나절 동안을, 나는 단지 돈 알았어.
나는 지금까지 읽지 못한 가장 통독할만한 문서 여야합니다.
기능과 기능이 필요합니다. 여기에 집계 할 대상은 무엇입니까?
필자는 이것이 가능한 PIVOT 기능의 가장 단순한 사용에 불과하다는 것을 알아 냈습니다. 어디에서도 괜찮은 예제를 찾을 수 없습니다. 도움! 이 문서에서
답변은 문자입니다. int가 아닙니다. 나는 편지를 AVG 할 수 없다. 나는 하나를 합칠 수 없다, 나는 COUNT를 원하지 않는다. 편지가 'a'인 경우, 'a'를보고 싶습니다. 왜 이렇게 어려운가요? –
피벗 절에 집계 함수가 필요하지만 집계 함수 (그러나 필요하지 않은 COUNT())는 숫자 데이터 형식에서만 작동합니다. –
좋아, 나에게 올바른 방향으로 갈거야, 해결책은이 경우에는 MAX 또는 MIN을 사용하는 것이다. –