在MySQL中选择组信息,每组返回多行

时间:2015-03-02 07:20:08

标签: mysql group-by

我正在使用MySQL,我想在选择中包含组平均值,但它仍然显示所有行。

相关表格:Student(studentID, studentName, major, class, gpa)

SELECT *, AVG(gpa) AS AvgClassGPA
FROM Student s1
WHERE gpa < (
    SELECT AVG(gpa) 
    FROM Student s2 
    WHERE s1.class = s2.class 
    GROUP BY class
)
GROUP BY NULL, class
ORDER BY studentID;

这只返回4行(分别为新生,大二,大三和大四)。如果我不包括AVG()选择和最后一个GROUP BY类,我会得到所需的行但不显示类平均值。我怎样才能得到两者?

感谢任何回复的人!

0 个答案:

没有答案