我需要一些幫助來計算出正確的SQL語句。MySQL group by where day <= x
If've有一個表具有以下結構: ID,PRODUCT_ID,單位,時間戳
我wan't其中包含了全國各地每天的單位名單。產品每天最多有一項記錄。 所以我的第一次嘗試是:
SELECT
DATE(timestamp) as day, SUM(units) as overall_units
FROM
tbl
GROUP BY
DATE(timestamp);
通常這應該這樣做。但是有些時候有些產品沒有記錄。不過,這些單位仍在倉庫中,因此他們應該進行計算。
例如:
我們有3件產品。汽車,鋼筆和輪子。從二○一二年十月二十○日 記錄:
汽車=> 5 筆=> 20個 輪子=> 4
記錄從2012年10月21日 汽車=> 5個 輪子=> 6
我的查詢將給出以下結果:
2012年10月20日=> 29
2012年10月21日=> 11
但是我想,如果當天沒有產品的記錄,它應該使用該產品的記錄,這是最近的產品記錄。
所以它應該是:
2012年10月21日=> 31
我希望你明白我的需要。
一起工作你是一個天才! ;) 謝謝! – netblognet