J'ai mis en place un exemple de scénario de mon problème et j'espère que sa assez pour que quelqu'un me pointer dans la bonne direction.
J'ai deux tables
Produits
Produit Méta
J'ai besoin d'un ensemble de résultats de la suite de
OriginalL'auteur sykespro | 2008-11-23
Nous avons utilisé l'approche suivante dans le passé...
Il peut également être utile de transposition des agrégations avec l'utilisation de...
MODIFIER
Également intéressant de noter c'est à l'aide de la norme ANSI SQL et afin qu'il fonctionne sur toutes les plateformes 🙂
une chose que je n'ai pas l'obtenir si vous avez besoin d'utiliser [m].metavalue en tout cas, alors pourquoi s'embêter à l'aide de l'interrupteur cas, u peut expliquer un peu.
Parce que, par exemple, vous voulez seulement la somme de [m].metavalue où [m].metakey est " un " apparaisse dans la colonne une. Essentiellement, il filtre toutes les autres metavalue résultats de la somme. De cette façon, vous pouvez transposer les données à l'origine, les lignes en colonnes.
OriginalL'auteur Rich Andrews
Je réalise que j'ai deux ans, mais il m'énerve que la accepté de répondre à des appels à l'aide de SQL dynamique et la plus upvoted réponse ne fonctionne pas:
Vous doit utiliser un Group By ou vous obtiendrez un décalées résultat. Si vous utilisez un Groupe, vous devez envelopper chaque colonne qui n'est pas dans la clause Group By dans une fonction d'agrégation (ou une sous-requête).
OriginalL'auteur Thomas
Si votre moteur de base de données de 2005 et de votre base de données est en mode de compatibilité de 2000, vous pouvez travailler autour de la partie inférieure du mode de compatibilité par l'exécution de votre requête à partir de 2005, la base de données. Cible de la 2000 de la base de données en utilisant une partie 3 convention d'affectation de noms pour vos tables dans la requête comme
DatabaseNameHere.dbo.TableNameHere
OriginalL'auteur AaronLS
Ah..Ok, Alors vous allez probablement vouloir prendre un coup d'oeil à cet article: oreillynet.com/pub/a/network/2004/12/17/crosstab.html
OriginalL'auteur GregD
utiliser la procédure stockée ici:
http://www.sqlteam.com/article/dynamic-cross-tabs-pivot-tables
également vérifier les commentaires.
OriginalL'auteur Mladen Prajdic