【发布时间】:2015-03-13 06:24:55
【问题描述】:
我有一个表格,可以保存最近几周的数据。
系统每天凌晨 3 点左右离线几分钟。
我想在周一凌晨 3 点左右运行一项 cron 作业以提取上周的数据。
如何选择上周的数据(周一 00:00:00 到周日 23:59:59)?
我意识到一种方法是简单地将 cron 安排在星期一的 00:00:00,但我想在系统离线时运行它,所以我需要使用 MySQL 来分隔数据。
提前致谢。
【问题讨论】:
我有一个表格,可以保存最近几周的数据。
系统每天凌晨 3 点左右离线几分钟。
我想在周一凌晨 3 点左右运行一项 cron 作业以提取上周的数据。
如何选择上周的数据(周一 00:00:00 到周日 23:59:59)?
我意识到一种方法是简单地将 cron 安排在星期一的 00:00:00,但我想在系统离线时运行它,所以我需要使用 MySQL 来分隔数据。
提前致谢。
【问题讨论】:
周日的最后一秒将是最困难的时刻——你经常会在那里遇到四舍五入的错误。解决此问题的一种方法是将 DATETIME 格式化或转换为 DATE...
SELECT *
FROM logfile
WHERE DATE(logdate) BETWEEN DATE_ADD(CURDATE(), -1 INTERVAL day) AND DATE_ADD(CURDATE(), -8 INTERVAL day)
【讨论】: