选择列表中的列 'Student.Sno' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。
时间: 2024-05-21 07:12:38 浏览: 71
解决大于5.7版本mysql的分组报错Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated
5星 · 资源好评率100%
这个错误通常出现在使用了 GROUP BY 子句的 SQL 语句中,如果在 SELECT 关键字中选择了某些列,且这些列没有被包含在 GROUP BY 子句中,那么就会出现这个错误。解决方法是:在 GROUP BY 子句中包含所有 SELECT 关键字中选择的列,或者使用聚合函数对这些列进行计算。例如,如果要按照学号分组并计算每个学生的平均分数,可以这样写 SQL 语句:
SELECT Student.Sno, AVG(Score) as AverageScore
FROM Student
JOIN Score
ON Student.Sno = Score.Sno
GROUP BY Student.Sno;
这样就不会出现上述错误了。
阅读全文