选择自上周特定日期以来的记录

时间:2011-07-29 08:27:10

标签: mysql

我想从上个星期三开始选择和SUM值,直到mysql中的NOW()。我怎么能这样做?

对不完整的问题,在上周三我并不是要硬编码日期,而是我希望我的程序运行该查询,所以它不能硬编码---需要一个灵活的解决方案。请帮忙......

3 个答案:

答案 0 :(得分:2)

select date_sub(now(), interval dayofweek(date_sub(now(), interval 4 day)) day);

这适用于一周中的任何一天,并且总是返回最近通过的星期三。在星期三本身,它返回上周三。第二天,它昨天返回

答案 1 :(得分:1)

SELECT SUM(value) FROM table WHERE date > '2011-07-20'

您应该使用编程语言计算日期(最快的解决方案)

答案 2 :(得分:1)

创世纪是对的(他是对的,使用他的建议),但作为一个智力练习:这是我能想到的最好的纯MySQL:

SELECT * FROM TABLE 
   WHERE 
     DATE_COLUMN > DATE_SUB( NOW(), INTERVAL DAYOFWEEK(NOW()) + 3 DAY);

现在 - DAYOFWEEK =>这个星期六。新婚夫妇。就在那之前三天。