Pour pivoter, vous devez utiliser la clause pivot de l'instruction select :
select *
from testtable
pivot ( max(name)
for id in (1,2,3,4)
)
Ce n'est pas particulièrement joli à faire en SQL, vous devez donc examiner attentivement si c'est ce que vous voulez faire. J'utilise normalement Oracle Base pour des exemples de pivot, mais il y en a beaucoup.
Voici un petit SQL Fiddle à démontrer.