Es könnte einfacher sein, einfach GROUP BY zu verwenden und dann in Ihrem eigentlichen Code die fehlenden Daten hinzuzufügen (oder durch den gesamten Datumsbereich zu iterieren und eine Null auszugeben, wenn das Datum in den Abfrageergebnissen fehlt).
Nicht alles muss in SQL gelöst werden, und vieles lässt sich woanders einfacher lösen. :)