Para listar alunos com e sem nota numa determinada avaliação do Moodle, execute o seguinte comando SQL:
SELECT u.id, u.firstname,u.lastname,u.email,u.username, g.finalgrade AS nota FROM mdl_role_assignments rs INNER JOIN mdl_user u ON u.id=rs.userid INNER JOIN mdl_context e ON rs.contextid=e.id LEFT JOIN mdl_grade_items i ON .instanceid=i.courseid
LEFT JOIN mdl_grade_grades g ON (g.itemid=i.id AND u.id=g.userid) WHERE i.id=?
Passe o id da avaliação em i.id=?
Para filtrar só alunos sem nota, execute esse comando:
:
SELECT u.id, u.firstname,u.lastname,u.email,u.username, g.finalgrade AS nota FROM mdl_role_assignments rs INNER JOIN mdl_user u ON u.id=rs.userid INNER JOIN mdl_context e ON rs.contextid=e.id LEFT JOIN mdl_grade_items i ON .instanceid=i.courseid
LEFT JOIN mdl_grade_grades g ON (g.itemid=i.id AND u.id=g.userid) WHERE i.id=? AND g.finalgrade is null
Passe o id da avaliação em i.id=?