Gerar lista de usuários com perfil de aluno nos curso do Moodle com comando SQL

Gerar lista de usuários com perfil de aluno nos curso do Moodle com comando SQL

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

O comando SQL  a seguir gera lista de usuário que estão inscritos em pelo menos um curso do Moodle com perfil de alunos. A lista excluiu usuários em seguintes situações:

  • Não estão inscritos em nenhum curso
  • Estão inscritos em um ou mais curso com perfil que não seja de aluno
SELECT DISTINCT u.id,u.firstname,u.lastname,u.username,u.email FROM mdl_user u INNER JOIN mdl_role_assignments rs  ON u.id=rs.userid INNER JOIN mdl_role r ON r.id=rs.roleid WHERE r.shortname='student' AND rs.userid NOT IN (SELECT DISTINCT rs1.userid FROM  mdl_role_assignments rs1 INNER JOIN mdl_role r1 ON r1.id=rs1.roleid                 WHERE rs1.userid=rs.userid AND r1.shortname !='student')