Table pivotante et colonnes de concaténation
J'ai une base de données dans le format suivant:
ID TYPE SUBTYPE COUNT MONTH
1 A Z 1 7/1/2008
1 A Z 3 7/1/2008
2 B C 2 7/2/2008
1 A Z 3 7/2/2008
Puis-je utiliser SQL pour la convertir en ceci:
ID A_Z B_C MONTH
1 4 0 7/1/2008
2 0 2 7/2/2008
1 0 3 7/2/2008
Donc, le TYPE
SUBTYPE
sont concaténées dans de nouvelles colonnes et COUNT
est résumée où la ID
et MONTH
match.
Des conseils seraient appréciés. Est-ce possible en SQL ou devrais-je programmer manuellement?
La base de données est SQL Server 2005.
Supposons qu'il y ait 100s de TYPES
et SUBTYPES
donc, et 'A' et 'Z' ne doit pas être codé en dur, mais a généré dynamiquement.
source d'informationauteur Brandon | 2008-10-01
Vous devez vous connecter pour publier un commentaire.
SQL Server 2005 offre un très utile tableau croisé dynamique et UNPIVOT opérateur qui vous permettent de faire ce code sans entretien à l'aide de PIVOT et certains de génération de code/SQL dynamique
Vous modifiez les exigences de plus de notre équipe de marketing! Si vous voulez qu'il soit dynamique, vous aurez besoin de se rabattre sur une procédure stockée.