Dans une requete je fais la soustraction entre deux date pour recuperer le nombre de jours de retard de paiement.
Mais quand le resultat est négatif je veux selectionner "0"
Comment ecrire : Max(0,x) en sql








Dans une requete je fais la soustraction entre deux date pour recuperer le nombre de jours de retard de paiement.
Mais quand le resultat est négatif je veux selectionner "0"
Comment ecrire : Max(0,x) en sql








j'ai trouvé la solution juste aprés la publication de la question.
Code : Sélectionner tout - Visualiser dans une fenêtre à part select case when (date1-date2)<0 then 0 else (date1-date2) end AS 'retard'
La plupart des SGBD possède la fonction GREATEST, qui renvoie la plus grande des valeurs en paramètre.
Vous pouvez écrire greatest(date1 - date2, 0).
Notez qu'en terme de performance c'est équivalent, c'est simplement plus concis.
Si vous utilisez DB2, MAX(val1, val2, ..., valn) est applicable tout comme GREATEST![]()
Partager