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:
avec comme discriminant non pas date = 01/07/2010 mais:
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' ;J'ai essayé de faire ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part TO_CHAR(dt1.DATECMD, 'DD/MM/YYYY') >= '01/07/2010'
mais la requête tourne infiniment et fini par planter
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' ;
Si vous avez une piste à me suggérer pour obtenir le résultat recherché je vous en remercie d'avance![]()
Partager