2015-04-20 61 views
4

我有一个完美运行的程序,它每周从我的数据库中获取信息。我目前的问题是,现在我必须从选择当前周(周日到周六)的方案改变为选择从周三到周二开始的一周。从周三到周二运行的MySQL数据库中选择一周

下面是该查询我现在该到星期六运行良好周日:

SELECT time, roNum 
FROM $user 
WHERE YEAR(date) = YEAR(CURDATE()) AND WEEK(date) = WEEK(CURDATE()); 

任何帮助将不胜感激。谢谢。

回答

1

这样做的一种方法是在提取日期组件之前调整日期。在这种情况下,您可能在提取年份和星期前减去两天:

SELECT time, roNum 
FROM $user 
WHERE YEAR(date - interval 2 day) = YEAR(CURDATE()) AND 
     WEEK(date - interval 2 day) = WEEK(CURDATE()); 
+0

没有工作,仍然只显示周周日开始周日和结束周六。如果我在上个星期四添加一个条目,它不会在我的程序中显示出来。如果我将日期更改为“今日”,则可以使用。 – IDCrisis

0

谢谢Gordon Linoff让我走上正轨。你的回答帮助我弄明白了。这里是代码,让我到我需要的地方:

SELECT time, roNum 
FROM $user 
WHERE YEAR(date + interval 4 day) = YEAR(CURDATE()) AND 
     WEEK(date + interval 4 day) = WEEK(CURDATE()) 
相关问题