如何在mysql中过滤特定时间段的select语句而不使用now()
我尝试过过滤记录,但使用了下面给出的now函数如何在mysql中过滤特定时间段的select语句而不使用now(),mysql,date,Mysql,Date,我尝试过过滤记录,但使用了下面给出的now函数 select * from table where date>= DATE_SUB( NOW( ) ,INTERVAL 90 DAY ) 我需要的是一个select语句,它可以从当前日期开始过滤一周或一个月的记录,但不使用NOW()函数 String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime()
select * from table where date>= DATE_SUB( NOW( ) ,INTERVAL 90 DAY )
我需要的是一个select语句,它可以从当前日期开始过滤一周或一个月的记录,但不使用
NOW()
函数
String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());
或者您可以使用mysql的curdate(),如果您使用的是java,则可以使用以下代码
String timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime());
或者您可以使用mysql的curdate(),因为我发现很难理解这个问题,我提供了以下可能性: 尝试从现在开始一周内的所有日期: 从现在起一个月内的所有日期: 如果要查找当月的所有日期,请使用 或用于当前周的所有日期
由于我发现很难理解这个问题,我提供了以下可能性: 尝试从现在开始一周内的所有日期: 从现在起一个月内的所有日期: 如果要查找当月的所有日期,请使用 或用于当前周的所有日期
你对获得当前日期的建议是什么?你要硬编码吗?可以使用
CURDATE()
吗?我现在不使用,因为我读到如果我使用now(),那么mysql查询将不会被缓存,因此CURDATE()也不能被使用。这里给出了获取当前日期的建议是什么?你要硬编码吗?CURDATE()
可以使用吗?我现在不使用,因为我已经读到,如果我使用now(),那么mysql查询将不会被缓存,所以CURDATE()不能被使用,因为我在这里投票,因为你似乎有一种非凡的能力来理解人们提出问题的想法。我不想知道您是如何发现java是正确的解决方案的;)我投赞成票,因为你似乎有一种非凡的能力来理解人们提出问题的想法。我不想知道您是如何发现java是正确的解决方案的;)
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())