Types de lignes dans des colonnes avec des valeurs adjacentes dans des lignes

J'ai une longue question que je vais résumer comme:

SELECT Name, Type, Rev From Table 

Cela renvoie quelque chose comme:

 Name Type Checked Bob Grp1 Frank Bob Grp2 Frank Bob Grp3 Frank Lisa Grp1 Sarah Lisa Grp3 Sarah 

Maintenant, puisque j'ai jusqu'à 3 types, j'aimerais qu'ils soient leurs propres colonnes et voient les valeurs dans la 3ème colonne apparaître sous chaque type:

Par exemple:

 Name Grp1 Grp2 Grp3 Bob Frank Frank Frank Lisa Sarah NULL Sarah 

Fondamentalement, je suis à la search d'une requête sur la façon de le faire. Tout commentaire serait apprécié.

Échantillon rapide

 Select * From YourTable Pivot (max(Checked) for Type in ([Grp1],[Grp2],[Grp3])) P 

Modifier – Si vous avez plus que les champs affichés

 Select * From ( SELECT Name, Type, Checked From Table ) A Pivot (max(Checked) for Type in ([Grp1],[Grp2],[Grp3])) P 

J'utilise habituellement une instruction CASE comme ceci:

 select Name, case Type when 'Grp1' then checked else null end as 'Grp1', case Type when 'Grp2' then checked else null end as 'Grp2', case Type when 'Grp2' then checked else null end as 'Grp3' from table