SQL Server - PIVOT de Multiples Agrégats
Compte tenu de l'ensemble de résultats suivant:
---------------------------------------------------------
CustomerID Service TransType SubTotal Tax NetTotal
---------------------------------------------------------
106 A CREDIT 12.52 - 12.52
106 A CREDIT 10.07 - 10.07
106 B CREDIT 2.00 - 2.00
106 C REMOTE 5.99 - 5.99
106 C CREDIT 5.99 - 5.99
106 C CREDIT 3.99 0.30 3.69
106 C CREDIT 5.99 0.30 5.69
106 D CREDIT 5.99 - 5.99
---------------------------------------------------------
Noter que NetTotal = sous-total Impôts
Merci de m'aider à calculer la somme(sous-total), somme(de l'Impôt) et la somme(NetTotal), avec pivotted TransType, comme suit:
--------------------------------------------------------------------------
CustomerID Service Cash Check Credit Remote SubTotal Tax NetTotal
--------------------------------------------------------------------------
106 A 0 0 22.59 0 22.59 0 22.59
106 B 0 0 2.00 0 2.00 0 2.00
106 C 0 0 15.97 5.99 21.96 0.60 21.36
106 D 0 0 5.99 0 5.99 0 5.99
--------------------------------------------------------------------------
Si j'avais seulement 1 colonne à être résumées il serait de droite vers l'avant à l'aide de PIVOT, mais je ne suis pas sûr de savoir comment obtenir les 3 agrégats pour les sous-total, l'Impôt et NetTotal.
Merci pour votre aide!
OriginalL'auteur Gus Cavalcanti | 2009-08-07
Vous devez vous connecter pour publier un commentaire.
Cela peut être fait sans un PIVOT:
Avec PIVOT, il devient beaucoup plus complexe. La meilleure façon que je peux penser à est de calculer le sous-total, l'Impôt, et NetTotal dans une autre requête, et puis de combiner les requêtes avec une jointure. L'exemple ci-dessous, afin de conserver la requête simple, je l'ai jeté en Espèces ou par Chèque.
OriginalL'auteur Andomar
Avez-vous essayé quelque chose comme ça?
+1 pour la réponse correcte et les inserts 🙂
OriginalL'auteur Adriaan Stander