Имейте в виду, что результат может немного отличаться от ожидаемого.
NOW()
возвращает DATETIME
.
И INTERVAL
работает по имени, например, INTERVAL 1 DAY = 24 hours
.
Так что, если ваш скрипт cron'd для запуска на 03:00
, он пропустит first three hours of records from the 'oldest' day
.
Чтобы получить целый день, используйте CURDATE() - INTERVAL 1 DAY
. Это вернется к началу предыдущего дня независимо от времени запуска сценария.