Cuidado con la conversión implícita de DATE a DATETIME:
Desde la versión 5.0, si comparas un DATE con un DATETIME, el DATE se convierte en DATETIME con la hora en cero. Esto quiere decir que suponiendo esto:
Código:
DATE(concat(2008,'-',08,'-',27))
se convertirá en '2008-08-27', pero al compararlo con NOW(), que devuelve un DATETIME se convertirá en '2008-08-27 00:00:00'.
Eso implica que la comparación real que sucederá puede ser por ejemplo así:
Cita: '2008-08-27 00:00:00' => '2008-08-27 16:45:20'
lo que obviamente dará FALSE.
Si lo que quieres comparar son las fechas de ambos cassos, debería ser:
Código:
DATE(CONCAT(date3,'-',date2,'-',date1)) => DATE(NOW());