Я использую SQL (H2 database engine ver 1.4.181) и пытаюсь суммировать 5 лучших баллов, которые имеет учащийся. Таблица RESULTS включает идентификатор studentID, eventID и точки. Каждый учащийся может быть введен только один раз. Следующий подзапрос, что я пытаюсь использовать, чтобы сделать это для студента с и идентификатор 5.SQL ORDER BY in IN subquery не возвращает результатов
SELECT SUM(points) FROM RESULTS
WHERE eventID IN
(SELECT TOP 5 eventID FROM RESULTS
WHERE studentID = 5 ORDER BY points DESC)
AND studentID = 5;
Однако этот запрос возвращает нуль. Я обнаружил, что если удаляется ORDER BY points DESC
, то остальная часть запроса работает. Кто-нибудь знает, как включить ORDER BY или почему он не работает?
Благодаря
Какая система баз данных вы используете и какую версию? –
Имеет ли столбец 'point' значение null? –