SQL Server - Possível Solução Dinâmica?

Eu tenho um problema bastante simples que tem sido surpreendentemente difícil de localizar online. Talvez eu esteja pesquisando palavras-chave impróprias, então eu queria parar e perguntar a vocês, porque o seu site tem sido uma bênção com meus estudos. Veja abaixo o cenário:

Selecione student, count (*) como Total, (a variável desconhecida: book1, book2, book3, book4, ect ...) de mystudies.

Essencialmente tudo que eu gostaria de fazer é listar todos os livros para um ID de aluno único que corresponda à contagem Total. Alguém poderia me apontar na direção certa, uma boa leitura ou qualquer coisa, para que eu possa dar um passo na direção correta? Eu estou supondo que seria feito através de uma junção esquerda (não sei como fazer a parte x1, x2, x3) e, em seguida, basta vincular os dois pelo número único de identificação do aluno (sem duplicatas), mas todos os pontos on-line para dinamizar, mas pivot aparece para colocar todas as linhas em colunas em vez de uma única coluna. O SQL Server 2005 é a plataforma preferida.

Obrigado!

Desculpa

A consulta a seguir produz meu id único (o aluno) e a contagem do aluno para todas as entradas duplicadas na tabela:

select student, count(*) as Total 
from mystudies
group by student order by total desc

a parte que eu não sei é como criar a junção esquerda na tabela id único (boookid)

select mystudies1.student, mystudies1.total, mystudies2.bookid 
from  (  select student, count(*) as Total 
         from mystudies
         group by student
      ) mystudies1
      left join 
      (  select student, bookid 
         from mystudies
      ) mystudies2 
         on mystudies1.student=mystudies2.student
order by mystudies1.total desc, mystudies1.student asc

Obviamente, a linha acima irá produzir resultados semelhantes aos seguintes:

Student    Total  BookID
000001    3        100001
000001    3        100002
000001    3        100003
000002    2        200001
000002    2        200002
000003    1        300001

Mas o que eu realmente quero é algo semelhante ao seguinte:

Student    Total  BookID
000001     3      100001, 100002, 100003
000002     2      200001, 200002
000003     1      300001

Presumi que tinha que ser feito em uma junção esquerda para que não alterasse a contagem real que estava sendo executada no aluno. obrigado!

questionAnswers(1)

yourAnswerToTheQuestion