Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL:ottieni MAX o GREATEST di diverse colonne, ma con campi NULL

Usa COALESCE

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

Aggiornamento:questa risposta utilizzava in precedenza IFNULL che funziona, ma come ha sottolineato Mike Chamberlain nei commenti, COALESCE è in realtà il metodo preferito.