0

我试图过滤记录,但使用下面给出的 now 函数

 select * from table where date>= DATE_SUB( NOW( ) ,INTERVAL 90 DAY )

我需要的是一个选择语句,它可以从当前日期过滤一周或一个月的记录,但不使用NOW()函数

4

2 回答 2

3

如果您使用的是 java,您可以使用以下代码

String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());

或者你可以使用mysql的curdate()

于 2013-09-12T15:01:27.187 回答
1

由于我发现很难理解这个问题,我提供了以下可能性:

从现在开始尝试一周内的所有日期:

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())
于 2013-09-12T15:04:36.010 回答