select dayofweek(date) weekend_days from (WITH RECURSIVE date_series (date) AS (select "2005-07-01" UNION ALL select date + interval 1 day
from date_series WHERE date < "2005-07-31")
select date, dayofweek(date) from date_series group by date) this_table