如何选择字段mysql中最后一个日期之前的最后n个月?

时间:2015-07-18 21:38:41

标签: php mysql

我对mysql有疑问。 我有一个像记录和记录的表有一个字段registered_date,其中包含日期。我想选择最近n个月,但不是在当前日期之前。我必须选择registered_date包含的最后日期。

registered_date

  • 2015-05-30
  • 2015年5月29日
  • 2015-05-28
  • 2015年5月27日
  • ...

我们七月。最后日期是2015-05-30。我想在2015-05-30之前的最后3个月选择。

我试着喜欢这些:

 .... where registered_date > DATE_SUB(now(), INTERVAL 6 MONTH)

registered_Date between now() - interval 30 day and now()

谢谢。

2 个答案:

答案 0 :(得分:2)

你需要找到最大的日期,然后在三个月之前选择:

select t.*
from table t cross join
     (select max(registered_date) as maxrd from table t) m
where t.registered_date >= maxrd - interval 3 month;

答案 1 :(得分:0)

你有没有试过这个

dependencies