2
我有了下面的表格如何统计每位教师授课的学生人数?
Courses: CourseID*, CourseName, TeacherID
Teachers: TeacherID*, TeacherName
Students: StudentID*, StudentName
StudentCourses: CourseID*, StudentID*
传说数据库: *是主键。
如何编写查询产生每个老师教的学生数?
例如
TeacherName, Count
Bob 15
Sarah 5
Zubair 1
编辑
select "TeacherName", count(*)
from courses inner join teachers on courses."TeacherID" = teachers."TeacherI"
join sutdentcourses on sutdentcourses."CourseID" = courses."CourseID"
group by "TeacherName"
order by "TeacherName";
这是一个带有“join”的非常基本的聚合查询。你至少应该尝试一下。 –
@idclark你需要老师和学生。与他们有关的唯一事情就是课程。所以你需要加入这些数据。现在,您需要每位教师的学生人数,以便您查看聚合函数。有了这些知识就可以得到一个SQL,然后我们可以进一步指导你,如果你仍然不明白。 http://www.w3schools.com/sql/并查看JOIN和GROUP BY。 –
@GordonLinoff有没有比我的解决方案更有效的方法? – idclark