我有一個查詢來檢索兩個日期之間每天的事件總數。在GROUP BY子句中返回空行
SELECT
DATE_FORMAT(startTime, '%Y%m%d') as day,
COUNT(0) as numEvents
FROM events
WHERE
(startTime BETWEEN 20140105000000 AND 20140112235900)
GROUP BY
day;
這返回一個列表就像
day | numEvents
---------+----------
20140105 | 45
20140107 | 79
20140108 | 12
20140109 | 56
注意到有在結果失蹤幾天,因爲有在事件表這些天無事件。有沒有辦法返回0值那些日子裏,導致:
day | numEvents
---------+----------
20140105 | 45
20140106 | 0
20140107 | 79
20140108 | 12
20140109 | 56
20140110 | 0
20140111 | 0
20140112 | 0
幾個解決方案在這裏:http://stackoverflow.com/questions/6310839/sql-group-by-including-empty -rows – JSuar