All good, I figured it out. I was making the query complicated earlier which is why it wasn't working.
Here's the query for anyone interested
SELECT
quiza.userid,
usr.username,
usr.email,
usr.firstname,
usr.lastname,
course.id AS 'Course ID',
course.fullname AS 'Course Name',
quiz.id AS 'Quiz ID',
quiz.name AS 'Quiz Name',
quiza.attempt,
qa.slot as 'Question Number',
q.id as 'Question ID',
q.questiontext,
qa.questionsummary,
qa.rightanswer,
qa.responsesummary,
qas.state
FROM mdl_quiz_attempts quiza
JOIN mdl_question_usages qu ON qu.id = quiza.uniqueid
JOIN mdl_question_attempts qa ON qa.questionusageid = qu.id
JOIN mdl_question_attempt_steps qas ON qas.questionattemptid = qa.id
JOIN mdl_question q ON qa.questionid = q.id
JOIN mdl_quiz quiz ON quiza.quiz = quiz.id
JOIN mdl_course course ON quiz.course = course.id
JOIN mdl_user usr on quiza.userid = usr.id
WHERE course.id = 2 and (qas.state = 'gradedwrong' or qas.state = 'gradedright')
ORDER BY quiza.id