SELECT teacher, SUM(CASE WHEN Year=2006 THEN 1 ELSE 0 END) AS [2006], SUM(CASE WHEN Year=2007 THEN 1 ELSE 0 END) AS [2007], SUM(CASE WHEN Year=2008 THEN 1 ELSE 0 END) AS [2008]FROM SomeTable1GROUP BY teacher
Create TABLE SomeTable1(Date datetime,teacher varchar(5),student varchar(3),class char(1) )
INSERT INTO SomeTable1 (Date, teacher, student, class) SELECT '2009/1/1', 'mary', 'a.d','a' UNION ALL SELECT '2009/1/11', 'ram', 'a.e','b' UNION ALL SELECT '2009/2/10', 'joe', 'a.e','c'UNION ALL SELECT '2009/3/12', 'sara', 'a.d','a' UNION ALL SELECT '2009/3/19', 'mary', 'a.f','b' UNION ALL SELECT '2009/3/13','joe', 'a.d','c' UNION ALL SELECT '2009/2/17', 'ram', 'a.e','c' UNION ALL SELECT '2009/2/21', 'joe', 'a.f','b' UNION ALL SELECT '2009/2/12', 'sara', 'a.f','a' UNION ALL SELECT '2009/1/23', 'sara', 'a.d','b' UNION ALL SELECT '2009/1/14', 'ram', 'a.e','a'
Teacher Jan feb march------ ------- ------- ------- joe 0 2 1mary 1 0 1ram 2 0 0sara 1 1 1