Gracias por la colaboracion y por la ultima sugerencia usuario Libras.
Lo resolvi, como bien me ayudo a analizarlo un amigo, agregando en las subconsultas una asociacion con la consulta madre, es decir
Código SQL:
Ver originalALTER PROCEDURE [dbo].[listarExamenesProfesor]
@Id_Profesor INT
AS
SELECT cu.Nombre AS CURSOS,ex.Nombre AS EXAMEN,ex.FecHora AS FECHA_Y_HORA,
COUNT(r.AlumnoId) AS RINDIERON,
(SELECT COUNT(r2.AlumnoId) FROM RESULTADO r2 LEFT JOIN EXAMEN ex2 ON r2.ExamenId=ex2.IdExamen WHERE r2.Nota >= 7 AND r2.ExamenId=r.ExamenId)AS APROBARON,
(SELECT COUNT(r2.AlumnoId) FROM RESULTADO r2 LEFT JOIN EXAMEN ex2 ON r2.ExamenId=ex2.IdExamen WHERE r2.Nota < 7 AND r2.ExamenId=r.ExamenId) AS REPROBARON
(...)
group by cu.Nombre,ex.Nombre,ex.FecHora,ex.CursoId,r.Examen Id
Ahora bien, me faltaria saber como logro obtener los alumnos que faltan rendir examen.. Acepto sugerencias..