2010-11-24 4 views
0

Il existe plusieurs questions de transposition sur Stackoverflow, mais en examiner quelques-unes est vraiment similaire à mon problème. La différence principale étant: avoir un ensemble de colonnes prédéfini.Transposez une table de base de données en résultat de comptage dynamique de colonnes

Disons que ma table ressemble à ceci:

ID Name Value 
--------------- 
1 Set Mitch 
2 Get Jane 
3 Push Dave 
4 Pull Mike 
5 Dummy John 
... 

Je voudrais transposer devenir:

Set Get Push Pull Dummy ... 
---------------------------------- 
Mitch Jane Dave Mike John ... 
+0

Y a-t-il juste une rangée à transposer? S'il y a plusieurs rangées, comment se rapportent-elles (c'est-à-dire, y a-t-il une deuxième rangée avec 'Name = 'Set'', et comment cela se rapporte-t-il aux autres)? – Tomalak

+0

@Tomalek: chaque ligne est transposée dans une colonne séparée. Aucune ligne dans la table d'origine n'est liée de quelque manière que ce soit. Donc, fondamentalement, supprimer les ID et transposer la table entière. C'est l'idée. –

Répondre

1

Voir this blog post un bon exemple de la façon de pivoter sur des colonnes dynamiques.

2

On dirait que vous êtes à la recherche d'un « tableau croisé dynamique dynamique » . Voir l'exemple ici, ou Google ce terme pour plus d'informations:

http://www.kodyaz.com/articles/t-sql-pivot-tables-in-sql-server-tutorial-with-examples.aspx

+0

Votre lien a fourni suffisamment d'informations sur l'opérateur 'PIVOT', mais les exemples étaient un peu plus compliqués, donc je vous ai seulement donné +1 et accepté une réponse différente. Je vous remercie. –

-1

Avez-vous besoin de faire cela dans le SQL? Il semble assez trivial si vous pouvez juste le faire après avoir obtenu une requête SELECT * dans un tableau que vous pouvez manipuler à volonté.

Questions connexes