我想顯示0或什麼我想要的時候沒有data.And這是我的查詢。如何顯示0當沒有數據
SELECT `icDate`,IFNULL(SUM(`icCost`),0) AS icCost
FROM `incomp`
WHERE (`icDate` BETWEEN "2016-01-01" AND "2016-01-05")
AND `compID` = "DDY"
GROUP BY `icDate`
這是此查詢的結果。
icDate | icCost
--------------------------
2016-01-01 | 1000.00
2016-01-02 | 2000.00
2016-01-03 | 3000.00
2016-01-04 | 4000.00
2016-01-05 | 5000.00
如果我每天想顯示數據,它有一個數據,這不是問題。但它有一天,它沒有數據。這不會顯示這一天,像這樣。
icDate | icCost
--------------------------
2016-01-01 | 1000.00
2016-01-02 | 2000.00
2016-01-04 | 4000.00
2016-01-05 | 5000.00
但我希望它可以顯示這樣的數據。
icDate | icCost
--------------------------
2016-01-01 | 1000.00
2016-01-02 | 2000.00
2016-01-03 | 0.00
2016-01-04 | 4000.00
2016-01-05 | 5000.00
如何編寫查詢以獲得此答案。謝謝。
創建一個日曆表,做一個外部連接。 – jarlh
沒有承諾,但它聽起來像一個CTE可能在這裏有一些幫助 – allie
不完全重複,但以下可能會有用:http://stackoverflow.com/questions/9295616/how-to-get-list-of mysql-select-query/9296238#9296238 –