2009-06-23 4 views
0

J'ai deux tablesrésultat de la requête SQL arrangement mensuel

(1) MonthlyTarget {SalesManCode, TargetValue}; 

(2) MonthlySales {SalesManCode, SaleDate, AchievedValue}; 

Je dois faire une requête qui produit un résultat comme le tableau suivant:

{SalesManCode, JanTar, JanAch, FebTar, FebAch,....., DecTar, DecAch} 

Quelle devrait être la requête?

Répondre

0

Quelle base de données utilisez-vous? J'ai une procédure stockée qui simplifie faire ce type de pivot pour Microsoft SQL Server 2005 ...

Si vous utilisez SQL Server 2005:

lancer pour installer le pivot_query procedure.

Voici un example comme vous l'avez décrit, la sortie ressemble à:

SalesManCode April_Tar April_Ach February_Tar February_Ach January_Tar January_Ach March_Tar March_Ach  
------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ 
Bob   12000.000 9000.000  9000.000  9000.000  10000.000 11000.000 11000.000 10000.000  
Sara   12000.000 9200.000  9000.000  9300.000  10000.000 11500.000 11000.000 10200.000  
+0

Comment puis-je parvenir dans SQL Server 2000? –

+0

Malheureusement, la commande PIVOT utilisée dans la procédure stockée a été introduite dans SQL Server 2005 - elle ne fonctionnera donc pas dans SQL Server 2000 ... Je vais regarder autour d'un peu. –

Questions connexes