SELECT Temp.rating, Temp.avgage
FROM
( 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 --- the error is here
)
ネクタイの扱い方に応じて、次のものを使用できます。
SELECT Temp.rating, Temp.avgage
FROM
( SELECT S.rating, AVG(S.age) AS avgage
FROM Sailors S
GROUP BY S.rating
) AS Temp
ORDER BY Temp.avgage
LIMIT 1
またはより単純な同等物:
SELECT S.rating, AVG(S.age) AS avgage
FROM Sailors S
GROUP BY S.rating
ORDER BY avgage
LIMIT 1
またはこれ(すべてのタイの結果を表示します):
SELECT Temp.rating, Temp.avgage
FROM
( SELECT S.rating, AVG(S.age) AS avgage
FROM Sailors S
GROUP BY S.rating
) AS Temp
WHERE Temp.avgage =
( SELECT AVG(S.age) AS avgage
FROM Sailors S
GROUP BY S.rating
ORDER BY avgage
LIMIT 1
)