首页 > 解决方案 > Mysql:计算没有时间的日期

问题描述

我必须查明,取消日期是否在订单日期后 7 天以内。仅此一点是没有问题的,但是两个字段都是 DATETIME 并且使用 ADD_DATE 的计算还包括时间。

这是计算日期的部分:

(kv.kaufdatum < '$abrechlimit' and kn.stornodatum > add_date(kv.kaufdatum, interval 7 day))

我怎么能告诉忽略时间?

标签: mysql

解决方案


正确使用日期函数,例如下面的查询将返回 7 天的回溯日期

 select   DATE(NOW()) - INTERVAL 7 DAY  

它返回“2018-07-16”

下面将返回

SELECT DATE_ADD("2017-06-15", INTERVAL -7 DAY);

'2017-06-08'

所以你需要在 where 子句中的 7 天后

   date(kn.stornodatum) > DATE_ADD(kv.kaufdatum, interval 7 day)

推荐阅读