抓取正好一个月或更长时间的日期记录

时间:2014-07-28 17:29:59

标签: mysql database

我汇总了一个查询,用于确定当前日期与数据库中的记录之间的时差是否恰好相隔一个月或更长时间。我正在将now()与created_at列进行比较,该列是一个时间戳。

EX: 2014年6月12日, 2014年7月12日

AND

2014年5月12日, 2014年7月12日

应该被视为理想的结果。

SELECT count(*) FROM `subscriptions` WHERE 
DATE_ADD(CAST(created_at as DATE),INTERVAL TIMESTAMPDIFF(MONTH, created_at, now()) MONTH)    = CAST(now() as DATE);

但是查询似乎没有返回所有想要的结果。它返回2014年2月28日和2014年7月28日,但它没有拉升6-28-2014。有没有比我提出的解决方案更好的方法呢?

1 个答案:

答案 0 :(得分:1)

您是否希望计算当月日期与当月日期相同的日期?如果是,请尝试DAYOFMONTH功能:

SELECT COUNT(*)
FROM subscriptions
WHERE DAYOFMONTH(created_at) = DAYOFMONTH(NOW())