Relatório que mapeia total de inscritos no curso do Moodle e total que acessaram com comando SQL

Relatório que mapeia total de inscritos no curso do Moodle e total que acessaram com comando SQL

por Lino Vaz Moniz -
Número de respostas: 0

O comando SQL  a seguir gera um relatório com a lista de cursos no Moodle com as seguintes informações:

  • Quantidade de participantes inscritos no curso
  • Total desses participantes que acessaram

Com esse relatório, dá para mapear em qual curso há maior grau de engajamento dos alunos

SELECT c.id,c.fullname,COUNT(DISTINCT ue.id) AS countenrol,COUNT(DISTINCT ul.userid) AS countenrolaccess FROM mdl_role_assignments rs INNER JOIN mdl_role r ON rs.roleid=r.id INNER JOIN mdl_context e ON rs.contextid=e.id  INNER JOIN mdl_enrol en ON  e.instanceid=en.courseid  INNER JOIN mdl_user_enrolments ue ON en.id=ue.enrolid INNER JOIN mdl_course c ON c.id=en.courseid  LEFT JOIN mdl_user_lastaccess ul ON (e.instanceid=ul.courseid AND rs.userid=ul.userid)  WHERE e.contextlevel=50 AND rs.userid=ue.userid AND en.status=0 AND ue.status=0   GROUP BY c.id,c.fullname