sql前一周总计

Posted

技术标签:

【中文标题】sql前一周总计【英文标题】:sql previous week total 【发布时间】:2013-10-02 20:06:32 【问题描述】:

查找上一周总计的查询

当天

SELECT Sum(total_cost)AS "total" 
FROM   purchases 
WHERE  datetime >= Curdate();

当前周

SELECT SUM(total_cost)as "total" 
FROM purchases 
WHERE datetime >= DATE_SUB(CURDATE(), INTERVAL 1 WEEK);

前一天

SELECT SUM(total_cost)AS "total"
FROM purchases
WHERE datetime >= DATE_SUB(CURDATE(), INTERVAL 1 DAY)
  AND datetime <= CURDATE();

寻找与此类似的查询以计算前一周。似乎无法正常工作。

【问题讨论】:

【参考方案1】:

也许你想要这个:-

SELECT SUM(total_cost)AS "total"
    FROM purchases
`datetime ` >= DATE_SUB(NOW(),INTERVAL 14 DAY) 
AND `datetime ` < DATE_SUB(NOW(),INTERVAL 7 DAY)

【讨论】:

这给了我与本周相同的结果 它给出了过去 7 天的结果。因此,如果说今天是 2013 年 9 月 26 日,那么这将给出 2013 年 9 月 19 日至 2013 年 9 月 25 日的数据。这就是前一周的情况。我错过了显而易见的事情吗?? 我正在尝试获取“当前周”之前开始的 7 天的总数 @user1715025:- 不客气。您可以为我的答案投票,这将有助于提高我的声誉!【参考方案2】:
select SELECT SUM(total_cost) AS "total"
  FROM purchases
  WHERE datetime between dateadd(d,-14,CURDATE()) and dateadd(d,-7,CURDATE())

【讨论】:

以上是关于sql前一周总计的主要内容,如果未能解决你的问题,请参考以下文章

sql函数--07---Mysql取前一天,前一周,后一天等时间函数

查找前一周的最后一天

Pentaho - 文件名中的前一周

PHP / MYSQL - 计算有多少连续的前一周结果与当前一周具有相同的价值(音乐图表)

B计划 第三周(开学前一周)

java获取当前时间前一周前一月前一年的时间