SQL Server 2005: datos dinámicos sin una suma / recuento y una lista dinámica de valores

Lo siento si esto está cubierto en otra parte en otra pregunta, pero no puedo encontrar ningún ejemplo que coincida exactamente con lo que necesito y me estoy confundiendo.

Tengo datos en la tabla como este: -

Name   |   Value
---------------
John   |   Dog
John   |   Cat
John   |   Fish
Bob    |   Python
Bob    |   Camel

Y me gustaría tener datos como este ...

Name   |  Value_1 | Value_2 | Value_3
-------------------------------------
John   |  Dog     |  Cat    | Fish
Bob    |  Python  |  Camel  | NULL

No quiero usar declaraciones de casos porque el perro, el gato, el pez, etc. hay más de 20 valores posibles y podrían cambiar las horas extras.

¿Alguien tiene alguna sugerencia?

Respuestas a la pregunta(3)

Su respuesta a la pregunta