У меня есть 3 стола - EVENT, MEMBER, RANK. Мне нужно показать лучший результат (из RANK) вместе с членом, к которому он принадлежит, для конкретного события (ex EVENT01). Каков самый простой способ сделать это? Мой код ниже, кажется, выбирает самое низкое число, но дублирует себя и утверждает, что другие члены получили тот же результат.Найти самое низкое число из столбца в таблице
Ожидаемый результат:
EVENT_ID EVENT_TYPE EVENT_NAME MEMBER_ID MEMBER_NAME RESULT
event01 swimming 100m mem001 John Smith 10
код до сих пор:
SELECT E.EVENT_ID, E.EVENT_TYPE, E.EVENT_NAME, R.MEMBER_ID, M.MEMBER_FIRSTNAME, M.MEMBER_LASTNAME, (SELECT MIN(RESULT)
FROM RANK WHERE E.EVENT_ID = 'EVENT003') AS AVG_INCOME_ALL_CLUBS
FROM EVENT E, RANK R, MEMBER M
WHERE E.EVENT_ID = R.EVENT_ID
AND R.MEMBER_ID = M.MEMBER_ID
ORDER BY MEMBER_ID;
ли не каждое событие есть победитель? Почему вы не можете просто фильтровать (использовать предложение WHERE) на R.RESULT = 1? – mathguy