我有studentcoursestudent_has_course表。

在学生中(idname ...)
当然(idname ...)
在student_has_course(student_idcourse_id)中

我想获得“人口最多的课程”的数量和名称。

有了这个我可以得到最大的填充课程数,但是我不知道该如何获取课程名称。

SELECT MAX(counted)
FROM
(
    SELECT COUNT(*) AS counted
    FROM student_has_course
    GROUP BY course_ID
) AS counts;

最佳答案

试试这个查询

SELECT COUNT(shc.course_id) as cnt, c.name
FROM student_has_course shc
JOIN course c ON (c.course_id = shc.course_id)
GROUP BY shc.course_id
ORDER BY cnt DESC
LIMIT 1

关于mysql - MySQL:最大数量和列名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32822519/

10-09 08:34