Hola Oscar mira espero te sirva aún esto en sql server, cree una tabla temporal para poder reproducir la que muestras al inicio.
Código SQL
[-]
Create table #consultas (
afiliado varchar(15),
formulario varchar(15),
FechaAtencion Datetime
)
insert into #consultas values('0001','00001','2011/01/15')
insert into #consultas values('0001','00021','2011/01/19')
insert into #consultas values('0001','00022','2011/01/21')
insert into #consultas values('0001','00035','2011/02/17')
insert into #consultas values('0001','00036','2011/02/25')
insert into #consultas values('0001','00088','2011/03/03')
insert into #consultas values('0001','00099','2011/04/04')
Select afiliado,
DATEPART(month, FechaAtencion) mes,
DATEPART(YEAR, FechaAtencion) anio,
COUNT(DATEPART(month, FechaAtencion)) cantidad
From #consultas
group by afiliado,
DATEPART(month, FechaAtencion),
DATEPART(YEAR, FechaAtencion)
--having COUNT(DATEPART(month, FechaAtencion))> 0
Drop table #consultas
si tienes problemas en los insert puede ser por el formato de fecha, en mi configuración esta en ingles, por si tienes problemas pues cambias a tu formato. Ej: 'año/mes/dia' es el mio y el tuyo puede ser 'dia/mes/año'.
saludos.