Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SQL Server 2008 - Pivotez sur une colonne, regroupez par une autre, conservez la référence à la troisième

C'est un pivot très simple. Juste :

SELECT OperationSessionRecordID, [32],[34],[38]
FROM TEMPtable
  PIVOT (
  min(DebriefingQuestionResults)
  for questionid in ([32], [34], [36])
) AS PIV;

Vous n'avez rien de spécial à faire pour obtenir le regroupement par OperationSessionRecordID - essentiellement, chaque colonne non mentionnée dans le PIVOT est une colonne de regroupement.