1.找到平均年龄的在所有等级中的最小的等级。(东南大学数据库公开课 SQL八 16:00)
WRONG:
SELECT S.rating
FROM Sailors S
WHERE S.age = (SELECT MIN(AVG(S2.age))
FROM Sailors S2;
错误1:聚集函数不能嵌套
错误2:要查找的是一个级别组的平均年龄最小值不是单个水手的年龄。
Correct solution:
SELECT Temp.rating
FORM (SELECT S.rating,AVG(S.age) AS avgage
FROM Sailors S
GROUP BY S.rating) AS Temp
WHERE Temp.avgage = (SELECT MIN(Temp.avgage)
FROM Temp);