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)
Nemám k dispozici SQL server. To je testováno na mysql. Zde slouží rok a měsíc k vrácení roku a měsíce data. Syntaxe CASE by měly být stejné v celé databázi.