Para identificar cada questão e cada opção de resposta das questões de uma tentativa do aluno no módulo quiz, ou seja, questionário, execute os seguintes comandos SQL:
Passe o id da tentativa em qt.id=? é chave estrageira gerada mdl_quiz_attempts
Listar as questões atribuídas para um usuário numa determinada tentativa
SELECT qa.questionid,qa.questionsummary FROM mdl_quiz_attempts qt INNER JOIN mdl_question_attempts qa ON qt.uniqueid=qa.questionusageid WHERE qt.id=?
Listar as questões e tipo de questões atribuídas para um usuário numa determinada tentativa
SELECT qa.questionid,q.qtype,qa.questionsummary FROM mdl_quiz_attempts qt INNER JOIN mdl_question_attempts qa ON qt.uniqueid=qa.questionusageid INNER JOIN mdl_question q ON qa.questionid=q.id WHERE qt.id=?
Listar as questões atribuídas para um usuário numa determinada tentativa com a sequência de cada resposta alternativa
SELECT qa.questionid,qa.questionsummary,qs.state,qs.id AS stepid,qs.userid,qsd.value AS sequence FROM mdl_quiz_attempts qt INNER JOIN mdl_question_attempts qa ON qt.uniqueid=qa.questionusageid INNER JOIN mdl_question_attempt_steps qs ON qa.id=qs.questionattemptid INNER JOIN mdl_question_attempt_step_data qsd ON qs.id=qsd.attemptstepid WHERE qsd.name='_order' AND qt.id=?
Listar as questões alternativas de respostas de cada questão para um usuário numa determinada tentativa
SELECT qa.id,qa.questionid,qa.questionsummary,qw.id AS answerid,qw.answer FROM mdl_quiz_attempts qt INNER JOIN mdl_question_attempts qa ON qt.uniqueid=qa.questionusageid INNER JOIN mdl_question_answers qw ON qa.questionid=qw.question WHERE qt.id=?