我需要从给定日期开始为期6个月(向后)。
日期示例:
07/06/2010 00:00:00
需要倒数6个月并显示:
07/12/2009 00:00:00
我一直在扫描:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html并且没有这些功能对我有意义:(
希望这是有道理的,任何帮助都会得到满足。
凯尔
答案 0 :(得分:2)
它位于手册的顶部,很惊讶你找不到它(adddate / date_add);
mysql> SELECT DATE_ADD('2010-04-02 23:23:23', INTERVAL -6 MONTH);
+----------------------------------------------------+
| DATE_ADD('2010-04-02 23:23:23', INTERVAL -6 MONTH) |
+----------------------------------------------------+
| 2009-10-02 23:23:23 |
+----------------------------------------------------+
1 row in set (0.00 sec)
如果需要,可以添加DATE_FORMAT()
答案 1 :(得分:1)
DATE_SUB(mydate, INTERVAL 6 MONTH)
答案 2 :(得分:0)
对于当前日期,您可以使用
SELECT * FROM table
WHERE mydate BETWEEN DATE_SUB(curdate(), INTERVAL 6 MONTH) and curdate();
如果给定日期不是当前日期,则应为2010-06-07
,而不是07/06/2010
。