Bonjour,

Je ne suis pas un expert en requêtes SQL et je tourne un peu en rond.
Mon SGBD est Oracle 11gR1.

Je cherche, dans une table contenant des informations de commandes, à sortir le nombre de commandes d'un type spécifique pour chaque jour à partir d'une date donnée, pour un sous-traitant précis.

En gros je voudrais itérer cette requête:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT UNIQUE(TO_CHAR(DATECMD, 'DD/MM/YYYY')) as DATE_COMMANDE, CMD, (SELECT COUNT(*) FROM CMDSREPORT dt2 WHERE lower(dt2.CMD)='achat' AND 
      dt2.SSTRAITANT='gugus' AND
        TO_CHAR(dt2.DATECMD, 'DD/MM/YYYY') = '01/07/2010') as NB FROM CMDSREPORT dt1 WHERE
  lower(CMD)='achat' AND
    lower(SSTRAITANT)='gugus' AND
      TO_CHAR(dt1.DATECMD, 'DD/MM/YYYY') = '01/07/2010' ;
avec comme discriminant non pas date = 01/07/2010 mais:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
TO_CHAR(dt1.DATECMD, 'DD/MM/YYYY') >= '01/07/2010'
J'ai essayé de faire ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT UNIQUE(TO_CHAR(DATECMD, 'DD/MM/YYYY')) as DATE_COMMANDE, CMD, (SELECT COUNT(*) FROM CMDSREPORT dt2 WHERE lower(dt2.CMD)='achat' AND 
      dt2.SSTRAITANT='gugus' AND
        dt2.DATECMD = dt2.DATECMD) as NB FROM CMDSREPORT dt1 WHERE
  lower(CMD)='achat' AND
    lower(SSTRAITANT)='gugus' AND
      TO_CHAR(dt1.DATECMD, 'DD/MM/YYYY') >= '01/07/2010' ;
mais la requête tourne infiniment et fini par planter

Si vous avez une piste à me suggérer pour obtenir le résultat recherché je vous en remercie d'avance