Сводная таблица 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.

Ответы на вопрос(7)

Ваш ответ на вопрос