下列SQL语句能够找出所有考试的平均分低于80分的学生的学号吗?为什么?
SELECT Sno, AVG(Score) AvgScore
FROM SC
GROUP BY Sno
HAVING AvgScore<80
下列SQL语句能够找出所有考试的平均分低于80分的学生的学号吗?为什么?
SELECT Sno, AVG(Score) AvgScore
FROM SC
GROUP BY Sno
HAVING AvgScore<80
“HAVING语句通常与GROUP BY语句联合使用,用来过滤由GROUP BY语句返回的记录集。 HAVING语句的存在弥补了WHERE关键字不能与聚合函数联合使用的不足
不过你这个写法能执行吗? HAVING AvgScore<80 不报错吗??报找不到AvgScore这列?
我测试了下 应该这样吧
SELECT Sno, AVG(Score) AvgScore
FROM SC
GROUP BY Sno
HAVING AVG(Score)<80