我想使电子邮件通知系统自动化。
我想在创建新记录后24小时发送电子邮件。
SELECT *
FROM YOUR_TABLE t
WHERE t.created_at = DATE_SUB(NOW(), INTERVAL 24 HOUR)
此代码无效。
我要如何比较24小时前的准确数字。
我已经创建了cron作业来触发每一分钟。
答案 0 :(得分:1)
如果遇到语法错误,请先尝试在间隔之间添加简单的引号。
INTERVAL '24 HOURS'
此外,由于您要查询的记录已存在24小时…到最近的纳秒,因此您不太可能通过此查询获得任何结果!尝试允许合理的宽限期延迟:
SELECT *
FROM YOUR_TABLE t
WHERE t.created_at >= DATE_SUB(NOW(), INTERVAL '24 HOURS')
AND t.created_at <= DATE_SUB(NOW(), INTERVAL '23 HOURS')