我试图过滤记录,但使用下面给出的 now 函数
select * from table where date>= DATE_SUB( NOW( ) ,INTERVAL 90 DAY )
我需要的是一个选择语句,它可以从当前日期过滤一周或一个月的记录,但不使用NOW()
函数
如果您使用的是 java,您可以使用以下代码
String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());
或者你可以使用mysql的curdate()
由于我发现很难理解这个问题,我提供了以下可能性:
从现在开始尝试一周内的所有日期:
SELECT * FROM table
WHERE date BETWEEN CURDATE() AND DATE_ADD(CURDATE() ,INTERVAL 1 WEEK)
以及从现在起一个月内的所有日期:
SELECT * FROM table
WHERE date BETWEEN CURDATE() AND DATE_ADD(CURDATE() ,INTERVAL 1 MONTH)
如果您正在查找当月的所有日期,请使用
SELECT * FROM table
WHERE MONTH(date)=MONTH(CURDATE()) AND YEAR(date)=YEAR(CURDATE())
或对于当前一周的所有日期使用
SELECT * FROM table
WHERE WEEK(date)=WEEK(CURDATE()) AND YEAR(date)=YEAR(CURDATE())