for that you need a calendar table and left join to that. something like
SELECT YEAR(f.[Date]),COUNT(t.EventDate)
FROM dbo.CalendarTable(DATEADD(yy,DATEDIFF(yy,0,GETDATE()),0),DATEADD(yy,DATEDIFF(yy,0,GETDATE())+1,0)-1,0,0)f
LEFT JOIN YourTable t
ON t.EventDate = f.[Date]
GROUP BY YEAR(f.[Date])
------------------------------------------------------------------------------------------------------
SQL Server MVP
http://visakhm.blogspot.com/