2013-09-26 159 views
1

尋找一個查詢與先前的周累計SQL前一週總

當前日期

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) 
+0

這給了我同樣的結果本週 – user1715025

+1

這是給的最後7天的結果。因此,如果今天說的是2013年9月26日,那麼這會將2013年9月19日的數據提交到2013年9月25日。這就是前一週的情況。我錯過了明顯嗎? –

+0

我試圖得到「當前周」之前7天開始的總數 – user1715025

0
select SELECT SUM(total_cost) AS "total" 
    FROM purchases 
    WHERE datetime between dateadd(d,-14,CURDATE()) and dateadd(d,-7,CURDATE())