Mysql查询以获取恰好在1天前创建的记录

Mysql查询以获取恰好在1天前创建的记录,mysql,sql,laravel,Mysql,Sql,Laravel,我想自动化电子邮件通知系统 我想在新记录创建24小时后发送电子邮件 SELECT * FROM YOUR_TABLE t WHERE t.created_at = DATE_SUB(NOW(), INTERVAL 24 HOUR) 此代码不起作用 我如何比较24小时前的精确值 我已经创建了每分钟触发一次的cron作业。如果遇到语法错误,请首先尝试在间隔周围添加简单的引号 INTERVAL '24 HOURS' 此外,您不太可能通过此查询获得任何结果,因为您要求的记录是24小时前的…精

我想自动化电子邮件通知系统

我想在新记录创建24小时后发送电子邮件

SELECT *
  FROM YOUR_TABLE t
  WHERE t.created_at = DATE_SUB(NOW(), INTERVAL 24 HOUR)
此代码不起作用

我如何比较24小时前的精确值


我已经创建了每分钟触发一次的cron作业。

如果遇到语法错误,请首先尝试在间隔周围添加简单的引号

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')

这只是个坏主意。您需要对请求进行批处理—比如按小时或按天—并在一段时间内查找记录。