我有一个MySQL表,看起来像这样:
+-----+------------+
| id | enddate |
+------------------+
| 1 | 2012-06-30 |
+------------------+
| 2 | 2012-07-05 |
+------------------+
| 3 | 2012-07-02 |
+------------------+
在我的网站上,我想打印出日期介于以下范围内的所有行:
今天的日期(我的意思是不是固定的,而是日期当查询正在运行时)提前2周。
因此,使用上面的例子只会打印第1行和第3行。
有人为此得到了解决方案吗?
答案 0 :(得分:5)
我认为您需要BETWEEN比较运算符和一些简单的日期函数:
WHERE enddate BETWEEN CURDATE() AND ADDDATE(CURDATE(), INTERVAL 14 DAY);
http://dev.mysql.com/doc/refman/5.5/en/comparison-operators.html#operator_between
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_adddate
答案 1 :(得分:1)