You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求提供Moodle活动完成状态查询的SQL代码(新手咨询)

查询Moodle活动完成状态的SQL代码

作为Moodle新手,直接查询mdl_course_modules_completion表只能得到原始状态值,关联其他核心表才能获取更有意义的用户、课程和活动信息。以下是实用的SQL查询示例:

基础全量查询

这个查询会返回所有用户在所有课程中的活动完成状态,包含易读的状态描述:

SELECT
    u.id AS user_id,
    u.username,
    u.email,
    c.fullname AS course_name,
    cm.name AS activity_name,
    cmc.completionstate,
    CASE cmc.completionstate
        WHEN 0 THEN '未完成'
        WHEN 1 THEN '已完成'
        WHEN 2 THEN '通过'
        WHEN 3 THEN '未通过'
    END AS completion_status,
    FROM_UNIXTIME(cmc.timemodified) AS completion_updated_datetime
FROM
    mdl_course_modules_completion cmc
JOIN
    mdl_user u ON cmc.userid = u.id
JOIN
    mdl_course_modules cm ON cmc.coursemoduleid = cm.id
JOIN
    mdl_course c ON cm.course = c.id
ORDER BY
    c.fullname, u.username, cm.name;

按场景过滤的查询示例

查询特定课程的活动完成状态

替换XXX为目标课程ID:

SELECT
    u.id AS user_id,
    u.username,
    cm.name AS activity_name,
    CASE cmc.completionstate
        WHEN 0 THEN '未完成'
        WHEN 1 THEN '已完成'
        WHEN 2 THEN '通过'
        WHEN 3 THEN '未通过'
    END AS completion_status
FROM
    mdl_course_modules_completion cmc
JOIN
    mdl_user u ON cmc.userid = u.id
JOIN
    mdl_course_modules cm ON cmc.coursemoduleid = cm.id
WHERE
    cm.course = XXX
ORDER BY
    u.username, cm.name;

查询特定用户的活动完成状态

替换XXX为目标用户ID:

SELECT
    c.fullname AS course_name,
    cm.name AS activity_name,
    CASE cmc.completionstate
        WHEN 0 THEN '未完成'
        WHEN 1 THEN '已完成'
        WHEN 2 THEN '通过'
        WHEN 3 THEN '未通过'
    END AS completion_status,
    FROM_UNIXTIME(cmc.timemodified) AS completion_updated_datetime
FROM
    mdl_course_modules_completion cmc
JOIN
    mdl_course_modules cm ON cmc.coursemoduleid = cm.id
JOIN
    mdl_course c ON cm.course = c.id
WHERE
    cmc.userid = XXX
ORDER BY
    c.fullname, cm.name;

新手注意事项

  • 确认你的Moodle数据库前缀是mdl_,如果用了自定义前缀,需替换所有表名中的前缀
  • completionstate的取值为Moodle通用标准,部分特殊活动类型可能有细微差异
  • 执行SQL前建议在测试环境验证,或先备份数据库

内容的提问来源于stack exchange,提问作者Venkata Rohith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 11:38:22