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

Tableau PIVOT pour les données de compte avec des colonnes pour chaque mois

Votre cas est certainement un candidat pour l'utilisation de la syntaxe du tableau PIVOT. Ce qui suit est une requête simple qui pivote.

SELECT Department_number
,[January]
,[February]
,[March]
FROM (
SELECT Department_number, Amount, datename(date_created) AS month_created from <Your_Table>
) AS SOURCETABLE
PIVOT(SUM([Amount]) FOR month_created IN ([January],[February],[March])) AS PIVOTTABLE

Cette requête suppose que vous avez une colonne date_created contenant des valeurs Jan,Feb,Mars dans votre table. Vous pouvez ajouter plus de mois si vous en avez besoin.

Plus sur le sujet - http://technet .microsoft.com/en-us/library/ms177410(v=sql.105).aspx