MYSQL - 如何在日期范围内查找记录

时间:2016-08-10 14:05:08

标签: mysql mysql-workbench

我正在查看的表格中包含固定日期的列 - EnteredDateTimeAuditDateTime。我需要一些帮助来查找超过1天且不到7天的记录

我目前使用的代码是 -

EnteredDateTime BETWEEN DATE_ADD(AuditDateTime, INTERVAL 1 day) AND DATE_ADD(AuditDateTime, INTERVAL 7 day)

1 个答案:

答案 0 :(得分:1)

您当前的查询有什么问题?从今天开始,你想要older than 1 day and less than 7 days吗?如果是,请使用DATE_SUBNOW()

EnteredDateTime BETWEEN DATE_SUB(NOW(), INTERVAL 1 day)
                    AND DATE_SUB(NOW(), INTERVAL 7 day)

或者,如果其中一列符合此条件?

EnteredDateTime BETWEEN DATE_SUB(NOW(), INTERVAL 1 day)
                    AND DATE_SUB(NOW(), INTERVAL 7 day)
OR  AuditDateTime BETWEEN DATE_SUB(NOW(), INTERVAL 1 day)
                      AND DATE_SUB(NOW(), INTERVAL 7 day)

如果您知道要检查哪个日期(最低或最高)以避免使用GREATEST(),则可以使用LEAST()OR