用户信息和课程名称以及课程中的时间花费

时间:2014-01-13 18:41:02

标签: moodle

有人可以帮我解决一下代码,以获取用户的名字,姓氏,课程名称以及用户在moodle 2.6中对该课程的花费时间吗?使用可配置的报告并没有给我确切的解决方案。

1 个答案:

答案 0 :(得分:3)

您可以使用以下sql查找课程参与者。

SELECT u.id, u.username, u.firstname, u.lastname FROM mdl_user u JOIN (SELECT DISTINCT eu1_u.id FROM mdl_user eu1_u JOIN mdl_user_enrolments eu1_ue ON eu1_ue.userid = eu1_u.id JOIN mdl_enrol eu1_e ON (eu1_e.id = eu1_ue.enrolid AND eu1_e.courseid = 4) WHERE eu1_u.deleted = 0 AND eu1_u.id <> 1 ) e ON e.id = u.id LEFT JOIN mdl_user_lastaccess ul ON (ul.userid = u.id AND ul.courseid = 4) LEFT JOIN mdl_context ctx ON (ctx.instanceid = u.id AND ctx.contextlevel = 30) ORDER BY u.lastaccess DESC;

有两种方法可以找到课程的时间花费:

  1. 如果启用了课程完成且用户已完成课程,那么课程中的时间花费将是mdl_course_completions表中的timestarted和timecompleted字段之间的差异。
  2. 您还可以使用moodle日志计算课程所花费的时间。
  3. 希望这会有所帮助。