Bonsoir,
j'ai une requête qui me pose souci et j'ai besoin d'aide.
Voilà un exemple de ce que j'ai en base :
Table Appel
No_Appel | Date
INC1 | 10/09/2016
INC2 | 20/08/2017
INC3 | 30/08/2017
Table Actions
No_appel | Action | EQUIPE
INC1 | OUVERTURE | CDS
INC1 | TRANSFERT | CDS
INC1 | TRANSFERT | N2
INC1 | TRANSFERT | CDS
INC1 | TRANSFERT | N2
INC1 | CLOTURE | N2
INC2 | OUVERTURE | CDS
INC2 | CLOTURE | CDS
INC2 | REOUVERTURE| CDS
INC2 |CLOTURE | CDS
INC3 | OUVERTURE | CDS
INC3 | TRANSFERT | N2
INC3 | CLOTURE | N2
Je cherche à obtenir le résultat suivant :
Année | Mois | TOTALOUVERTURE | TOTALTRANSFERT | TOTALCLOTURE
j'ai essayé de faire un
Mais forcément il me compte les clotures et transferts en double voir plus car pas de distinct
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 select year(DATE),month(date), sum(case when action = ouverture then 1) as TOTALOUVERTURE, sum(case when action = transfert and equipe = CDS THEN 1) as TOTALTRANSFERT, sum(case when action = cloture and equipe = CDS THEN 1) as TOTALCLOTURE FROM Appel inner join actions on appel.no_appel = action.no_appel group by year(DATE),month(date) order by year(DATE),month(date)
Je pensais mettre une sous requete mais c'est interdit dans un aggrégat
Après je pensais à mettre cela dans la condition du JOIN ou utiliser EXIST ou UNIQUE mais n'ayant pas l'habitude d'utiliser cela je suis perdu.
Merci à tous
Partager