MySQL: selecione todas as datas em um intervalo mesmo se nenhum registro presente

Eu tenho um banco de dados de usuários. Eu gostaria de criar um gráfico baseado no crescimento da base de usuários. A consulta que tenho agora é:

<code>SELECT DATE(datecreated), count(*) AS number FROM users 
WHERE DATE(datecreated) > '2009-06-21' AND DATE(datecreated) <= DATE(NOW())
GROUP BY DATE(datecreated) ORDER BY datecreated ASC
</code>

Isso retornaquase o que eu quero. Se recebermos 0 usuários um dia, esse dia não será retornado como um valor 0, ele será ignorado e o próximo dia que tiver pelo menos um usuário será retornado. Como posso obter algo como (psuedo-response):

<code>date1 5
date2 8
date3 0
date4 0
date5 9
etc...
</code>

onde as datas com zero aparecem em ordem sequencial com o resto das datas?

Obrigado!

questionAnswers(6)

yourAnswerToTheQuestion