Сводная таблица SQL Server 2005 для неизвестного числа столбцов
Я работаю с набором данных, который выглядит примерно так:
StudentName | AssignmentName | Grade
---------------------------------------
StudentA | Assignment 1 | 100
StudentA | Assignment 2 | 80
StudentA | Total | 180
StudentB | Assignment 1 | 100
StudentB | Assignment 2 | 80
StudentB | Assignment 3 | 100
StudentB | Total | 280
Имя и количество заданий являются динамическими, мне нужно получить результаты, аналогичные следующим.
Student | Assignment 1 | Assignment 2 | Assignment 3 | Total
--------------------------------------------------------------------
Student A | 100 | 80 | null | 180
Student B | 100 | 80 | 100 | 280
Теперь в идеале я хотел бы отсортировать столбец на основе "срок оплаты" которые могут быть включены / связаны с каждым назначением. Итоговое значение должно быть в конце, если это возможно (оно может быть вычислено и удалено из запроса, если это возможно.)
Я знаю, как сделать это для 3-х назначений, используя pivot с простым именованием столбцов, он пытается сделать это динамически, чего у меня нетЯ нашел хорошее решение пока. Я пытаюсь сделать это на SQL Server 2005
РЕДАКТИРОВАТЬ
В идеале я хотел бы реализовать это без использования динамического SQL, поскольку это противоречит политике. Если это не такЭто возможно ... тогда будет работать рабочий пример с динамическим SQL.