学生课程表查询中的收藏课程

SHA*_*BIR 1 sql join

我想知道我该怎么做:

我有三张桌子:

Student(StudentID, StudentName)
Course(CourseID, CourseName)
StudentCourse(StudentID, CourseID) -- junction table to assign courses to students
Run Code Online (Sandbox Code Playgroud)

我如何根据 "注册学生人数最多的课程是最喜欢的课程" 的条件查询最喜欢的课程

救命??

我已经在sql小提琴上设置了架构

SQLFiddle

Joh*_*Woo 6

尝试使用 TOP...WITH TIES

SELECT  TOP 1 WITH TIES c.CourseName,
        COUNT(c.CourseID) totalCount
FROM    student a
        INNER JOIN studentcourse b
            ON a.studentID = b.studentID
        INNER JOIN course c
            ON b.courseID = c.courseID
GROUP BY c.CourseName
ORDER BY totalCount DESC
Run Code Online (Sandbox Code Playgroud)

WITH TIES 显示具有相同最高计数的记录.

SQLFiddle演示