如何在mysql中选择周一到周日

如何在mysql中选择周一到周日,mysql,date,range,Mysql,Date,Range,我有一个表格,用来保存过去几周的数据。 系统每天凌晨3点左右离线几分钟。 我想在周一凌晨3点左右运行cron作业,以提取上周的数据。 如何选择上周的数据(周一00:00:00至周日23:59:59)? 我意识到一种方法是简单地将cron安排在周一的00:00:00,但我想在系统离线时运行它,所以我需要使用MySQL来分隔数据。 提前感谢。困难在于周日你的最后一秒——你经常会在那里遇到舍入错误。解决这个问题的一种方法就是从DATETIME到DATE设置格式或强制转换 SELECT * FROM

我有一个表格,用来保存过去几周的数据。
系统每天凌晨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)