Можете да изброите датите като извлечена псевдотаблица (с UNION
) и след това го присъединете към вашите данни
SELECT dates.date, COALESCE(attendance.total,0) AS total FROM (
SELECT '2012-07-02' AS date
UNION ALL SELECT '2012-07-03'
UNION ALL SELECT '2012-07-04'
) AS dates
LEFT JOIN attendance USING(date)
Редактиране:добавено COALESCE
за да върнете 0
вместо NULL
за липсващи записи.