SELECT year(holidaydate),month(holidaydate),
sum(case Weekend when true then 1 else 0 end) wkEnd,
sum(case PublicHoliday when true then 1 else 0 end) pubHol
FROM Holiday
GROUP BY year(holidaydate),month(holidaydate)
Non ho SQL Server disponibile. Questo è testato su MySQL. Qui anno e mese sono la funzione per restituire l'anno e il mese della data. Sintassi di CASE dovrebbe essere lo stesso in tutto il database.