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

能否编写Moodle SQL查询获取课程管理者与创建者信息?

在Moodle中查询课程分类管理者与创建者信息

可行,直接查询Moodle数据库即可获取所需信息。以下是适配标准Moodle数据库结构的SQL语句(若你的Moodle使用了自定义表前缀,请将语句中的mdl_替换为实际前缀):

SELECT
    cc.id AS 'coursecategory ID',
    cc.name AS 'coursecategory name',
    u.firstname,
    u.lastname,
    u.email AS 'emailadress',
    CASE
        WHEN r.shortname = 'coursecreator' THEN 'coursecreator'
        WHEN r.shortname = 'manager' THEN 'manager'
    END AS 'rule (manager/coursecreator)'
FROM
    mdl_course_categories cc
JOIN
    mdl_context ctx ON ctx.instanceid = cc.id AND ctx.contextlevel = 40
JOIN
    mdl_role_assignments ra ON ra.contextid = ctx.id
JOIN
    mdl_role r ON ra.roleid = r.id
JOIN
    mdl_user u ON ra.userid = u.id
WHERE
    r.shortname IN ('coursecreator', 'manager')
ORDER BY
    cc.id, r.shortname;

语句说明:

  • mdl_course_categories:存储课程分类的基础信息,对应输出的分类ID和名称
  • mdl_context:关联课程分类的上下文(contextlevel = 40是Moodle中课程分类的固定上下文级别)
  • mdl_role_assignments:记录用户与角色的绑定关系
  • mdl_role:通过角色短名筛选出目标角色(课程创建者coursecreator、管理者manager)
  • CASE语句将角色短名转换为需求中的规则描述格式

内容的提问来源于stack exchange,提问作者D-T

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 17:17:02