У меня есть столбец duedate (datetime format), который указывает дату оплаты билета, теперь мне нужно получить базу данных "Due today" при сравнении между now() с duedate. i.e 2010-04-29 02:00 vs 2010-04-29 10:00 вернет true в этом вопросе.
MySQL сравнивает сейчас() (только дату, а не время) с полем datetime
Ответ 1
Используйте DATE(NOW()) для сравнения дат
DATE(NOW()) предоставит вам дату в текущую дату, а DATE(duedate) предоставит вам дату даты. то вы можете легко сравнить даты
Итак, вы можете сравнить его как
DATE(NOW()) = DATE(duedate)
ИЛИ
DATE(duedate) = CURDATE()
Смотрите здесь
Ответ 2
Сравнить дату только вместо даты + времени (СЕЙЧАС) с помощью:
CURDATE()