Transformer des lignes en colonnes

Transformer des lignes en colonnes - SQL/NoSQL - Programmation

Marsh Posté le 18-04-2006 à 15:06:12    

J'ai un petit problème de débutante : je dois mettre des lignes en colonnes en SQL (Server) et je ne sais pas comment faire.
En fait, j'ai 3 lignes par client (car j'ai 3 opérateurs par client) et pour chacune des lignes j'ai leur chiffre d'affaires. Je veux obtenir une colonne pour chaque opérateur avec le Chiffre d'affaires correspondant comment je peux faire???
Voici mon code SQL :
 
select Identifiant, Annee, Operateur, SUM(CA) as CA
from InfosTEMP i
where annee between 2003 and 2005
group by Identifiant, Annee, Operateur  
order by Identifiant  
 
Qu'est ce que je dois rajouter???

Reply

Marsh Posté le 18-04-2006 à 15:06:12   

Reply

Marsh Posté le 18-04-2006 à 15:27:09    

S'il y aura toujours 3 opérateurs, tu peux faire qqch comme :
 
select Identifiant,
       Annee,
       SUM(CASE Operateur
           WHEN 'Operateur1' THEN CA
           ELSE 0) as CA_Operateur1,
       SUM(CASE Operateur
           WHEN 'Operateur2' THEN CA
           ELSE 0) as CA_Operateur2,
       SUM(CASE Operateur
           WHEN 'Operateur3' THEN CA
           ELSE 0) as CA_Operateur3
from InfosTEMP i
where annee between 2003 and 2005
group by Identifiant, Annee
order by Identifiant, Annee;

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed