Salut, je doit faire une requête qui fera un rapport du genre :
Semaine 1 : x résultats du type v
Semaine 1 : x résultats du type y
Semaine 1 : x résultats du type w
Semaine 2 : x résultats du type v
Semaine 2 : x résultats du type y
Semaine 2 : x résultats du type w
Semaine 3 : x résultats du type v
Semaine 3 : x résultats du type y
Semaine 3 : x résultats du type w
Semaine 4 : x résultats du type v
Semaine 4 : x résultats du type y
Semaine 4 : x résultats du type w
....
Le problème est que je fait ma requête à partir des type v,y et w et non à partir du temps.
Donc il se peut que je n'est aucun résultat pour par exemple Semaine 4 : x résultats du type y.
J'ai besoin d'avoir l'enregistrement et un 0 pour le count.
Voici un exemple de ma requête :
Le résultat que je voudrais serait du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 SELECT TEMPS, PETY_DESC, SUM (COUNT) "COUNT" FROM (SELECT TO_CHAR (PEIN_CREATION, 'IYYY-IW') "TEMPS", CASE WHEN PERM_PETY_ID IN (3, 4) THEN 'Désistement' WHEN PERM_PETY_ID IN (1, 2) THEN 'Consentements' END "PETY_DESC", COUNT (*) "COUNT" FROM PEIN, PERM WHERE PERM_ID = PEIN_PERM_ID AND TO_CHAR (PEIN_CREATION, 'YYYY-MM-DD') >= '2009-10-01' AND TO_CHAR (PEIN_CREATION, 'YYYY-MM-DD') <= '2010-01-19' GROUP BY PEIN_CREATION, PERM_PETY_ID) GROUP BY TEMPS, PETY_DESC
TEMPS PETY_DESC COUNT
2009-51 Désistement 5299
2009-51 Consentements 798
2009-52 Désistement 2901
2009-52 Consentements 526
Mais présentement, si j'ai aucun résultat pour la semaine 51 du type "consentements", ça me donne :
TEMPS PETY_DESC COUNT
2009-51 Désistement 5299
2009-52 Désistement 2901
2009-52 Consentements 526
J'ai besoin de la ligne
2009-51 Consentements 0
Quelqu'un a une idée?? Du genre partir la requête sur une plage de temps au lieu du type d'information?
Du genre pour tout les semaines entre telle date et telle date, trouve moi les counts pour chaque type...
Merci de votre aide...Je suis dans le ....![]()
Partager