Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL :obtenez MAX ou GREATEST de plusieurs colonnes, mais avec des champs NULL

Utilisez COALESCE

SELECT id, 
   GREATEST(date1, 
     COALESCE(date2, 0),
     COALESCE(date3, 0)) as datemax 
FROM mytable

Mise à jour :Cette réponse utilisait auparavant IFNULL qui fonctionne, mais comme Mike Chamberlain l'a souligné dans les commentaires, COALESCE est en fait la méthode préférée.