Para listar os alunos que acessaram um determinado curso, execute no banco o seguinte comando SQL
SELECT DISTINCT u.id, u.firstname,u.lastname,u.email 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 INNER JOIN mdl_logstore_standard_log l ON l.userid=u.id AND l.courseid=e.instanceid WHERE e.contextlevel=50 AND rs.roleid=5 AND e.instanceid=?
Passe o parâmetro id do curso em e.instanceid=?
Para listar os alunos que acessaram um determinado curso em um determinado período, execute no banco o seguinte comando SQL
SELECT DISTINCT u.id, u.firstname,u.lastname,u.email 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 INNER JOIN mdl_logstore_standard_log l ON l.userid=u.id AND l.courseid=e.instanceid WHERE e.contextlevel=50 AND rs.roleid=5 AND e.instanceid=? AND l.timecreated >= ? AND l.timecreated <= ?
Passe o parâmetro id do curso em e.instanceid=?
Para o parâmetro data inicial / final em AND l.timecreated >= ? AND l.timecreated <= ? a data precisa ser convertida em timestamp