ACTUALIZACIÓN:esto no funciona para el diseño de la tabla de OP donde se crean 2 filas para preguntas de 4 respuestas
Creo que primero debe verificar cada pregunta si tiene todas las respuestas correctas y luego contar las preguntas sin respuestas incorrectas:
select
count(*) - count(incorrect_answers_per_question) correct
from (
select
d.test_id,
d.question_id,
sum(case when r.correct_response_flag = 'N' then 1 end) incorrect_answers_per_question
from test_response d
join question_response r on d.response_id = r.question_resp_id
where d.test_id = '10113'
group by d.test_id, d.question_id
)