我正在建立一个课程系统,其中包含课程、讲师和一张将两者联系起来的表格。
简化表instructors
:
id | name | ...
简化表courses
:
id | name | instructors_needed | ...
简化表link
:
id | course_id | instructor_id
我创建了以下查询来获取与特定课程相关的教师姓名:
SELECT i.name, c.name, c.instructors_needed FROM courses c
LEFT OUTER JOIN
link
ON c.id = link.course_id
LEFT OUTER JOIN
instructors i
ON link.instructor_id = i.id
这工作正常。我创建了以下查询来查找每门课程的讲师人数:
SELECT COUNT(i.name) as number, c.id, c.name, c.instructors_needed FROM courses c
LEFT OUTER JOIN
link
ON c.id = link.course_id
LEFT OUTER JOIN
instructors i
ON link.instructor_id = i.id
GROUP BY c.ID
我想结合这两个查询,以获取有关特定案例的讲师的所有详细信息,以及课程中的讲师总数和所需的讲师数量。我怎么做?我知道 GROUP BY 是这里的问题。我进行了搜索,但我只能找到 2 个表而不是 3 个表的示例,而且我不知何故无法弄清楚三个表。
非常感谢您的帮助,谢谢!