Brug COALESCE
SELECT id,
GREATEST(date1,
COALESCE(date2, 0),
COALESCE(date3, 0)) as datemax
FROM mytable
Opdatering:Dette svar brugte tidligere IFNULL
hvilket virker, men som Mike Chamberlain påpegede i kommentarerne, COALESCE
er faktisk den foretrukne metode.