Extrair data de início e conclusão de um determinado aluno no curso no Moodle com comando SQL

Extrair data de início e conclusão de um determinado aluno no curso no Moodle com comando SQL

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

Este post mostrar os comandos SQL para consultar data que o aluno iniciou e terminou o curso.

Para cada comando SQL, é necessário passar parâmetro id do curso e id do usuário.

Há vários critérios. Elencamos aqui alguns critérios.  No processo de desenvolvimento use, o critério que melhor lhe atende.  

Data de início do curso

Vamos aqui considerar três critérios para extração da data em que o aluno iniciou o curso.

 

Critério I- Data do primeiro acesso no curso

SELECT MIN(timecreated) AS timestart FROM mdl_logstore_standard_log   WHERE  courseid=? AND userid=?

 

Critério II- Data de início da inscrição no curso

SELECT MAX(ue.timestart) AS timestart FROM mdl_user_enrolments ue INNER JOIN mdl_enrol e ON ue.enrolid=e.id WHERE e.courseid=? AND e.status=0 AND ue.status=0 AND ue.userid=?

 

Critério III- Data de cadastro do usuário no Moodle

SELECT timecreated AS timestart FROM mdl_user WHERE id=?

Passe id do usuário em id=?

 

Data  de conclusão do curso

Vamos aqui também considerar três critérios para extração da data em que o aluno finalizou o curso.

 

Critério I- Data de conclusão do curso

SELECT timecompleted FROM mdl_course_completions WHERE timecompleted > 0 AND course=? AND userid=?

Essa data vai existir se houver configuração de rastreamento de conclusão do curso no Moodle.

 

Critério II- Data de lançamento da nota final no curso

SELECT g.timecreated,g.timemodified FROM mdl_grade_items i INNER JOIN mdl_grade_grades g ON i.id=g.itemid WHERE i.itemtype = 'course' AND i.courseid=? AND g.userid=?

 

Critério III- Data do último acesso no curso

SELECT MAX(timecreated) AS timeend FROM mdl_logstore_standard_log   WHERE  courseid=? AND userid=?