Can you post one of your queries. It is very likely that you can get the results for all 51 weeks by joining to a calendar table. Would be easier to provide more concrete and useful solution if people are able to see the template query. What I have in mind is something like this: SELECT DATEADD(wk,DATEDIFF(wk,0,c.Date),0) AS [Week], COUNT(*) AS EventCountFROM CalendarTable c LEFT JOIN EventsTable e ON CAST(e.EventDate AS Date) = c.DateGROUP BY DATEADD(wk,DATEDIFF(wk,0,c.Date),0);