Bonjour,

Question épineuse aujourd'hui. Dans un ordre SELECT, je doit récupérer le premier jour du mois suivant le maximum de 3 dates.

Concretement, pour une ligne de ma table j'ai 3 dates : date1, date2 et date3. Je veux recuperer la date la plus élevé de ces 3 dates et calculer le premier jour du mois suivant.

Pour le premier jour du mois suivant, je m'en sort avec une concaténation et quelques ADD_MONTHS avec un truc du style :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
to_date('01/'||to_char(add_months(date1,1),'MM')||'/'||to_char(add_months(date1,1),'YYYY'),'DD/MM/YYYY')

Le problème, c'est pour récupérer le maximum des 3 dates. J'utilise des CASE (je suis en 9i) mais c'est lourd et moche.

Si quelqu'un aurait une piste de reflexion plus propre, je suis preneur.
Merci d'avance