Ini adalah bagaimana saya melakukannya. Ini membuat rentang tanggal dari 01-01-2011 hingga 31-12-31 :
select
date_format(
adddate('2011-1-1', @num:[email protected]+1),
'%Y-%m-%d'
) date
from
any_table,
(select @num:=-1) num
limit
365
-- use limit 366 for leap years if you're putting this in production
Satu-satunya persyaratan adalah jumlah baris di any_table harus lebih besar atau sama dengan ukuran rentang yang dibutuhkan (>=365 baris dalam contoh ini). Kemungkinan besar Anda akan menggunakan ini sebagai subkueri dari seluruh kueri Anda, jadi dalam kasus Anda any_table bisa menjadi salah satu tabel yang Anda gunakan dalam kueri itu.