Bonjour à tous,

Je suis entrain de créer un script SQL sous Oracle.
Je cherche à savoir si la date système est comprise entre deux dates.
Cependant, en analysant le résultat de la requête je trouve une erreur quand la date système = une des deux bornes.

Par exemple avec date système = 04/08/2010
Limite basse de la borne 1 = 26/07/2010
Limite haute de la borne 1 = 04/08/2010
Limite basse de la borne 2 = 05/08/2010
Limite haute de la borne 2 = 15/08/2010

Dans ce cas, le système ne considère pas la date système dans la tranche 1 ni dans la tranche 2.
Comment puis-je résoudre le problème ?

Merci à vous.

Ci-joint un morceau du code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
SUM(CASE WHEN SYSDATE < to_date(DECVM,'YYYYMMDD')  THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "NON ECHU",
 
SUM(CASE WHEN SYSDATE BETWEEN to_date(DECVM,'YYYYMMDD') + 00 AND to_date(DECVM,'YYYYMMDD') + 10 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "A_0_10_jours",
 
SUM(CASE WHEN SYSDATE BETWEEN to_date(DECVM,'YYYYMMDD') + 11 AND to_date(DECVM,'YYYYMMDD') + 20 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "A_11_20_jours",
 
SUM(CASE WHEN SYSDATE BETWEEN to_date(DECVM,'YYYYMMDD') + 21 AND to_date(DECVM,'YYYYMMDD') + 30 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "A_21_30_jours",
 
SUM(CASE WHEN SYSDATE BETWEEN to_date(DECVM,'YYYYMMDD') + 31 AND to_date(DECVM,'YYYYMMDD') + 40 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "A_31_40_jours",
 
SUM(CASE WHEN SYSDATE BETWEEN to_date(DECVM,'YYYYMMDD') + 41 AND to_date(DECVM,'YYYYMMDD') + 50 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "A_41_50_jours",
 
SUM(CASE WHEN SYSDATE > to_date(DECVM,'YYYYMMDD') + 51 THEN DECODE(INDCMV,'D',MTVMV,-MTVMV) ELSE 0 END) AS "SUP_51_jours"