Сумма 5 лучших значений в MySQL

У меня есть таблица MySQL, где я храню результаты гоночного чемпионата, так что каждая строка содержит - среди других данных - каждый гонщик ».Положение в определенной расе. Я хочу получить сумму определенного водителя5 лучших мест (например, если водительлучшие позиции заняли 1,2,2,4,5, яЯ хотел бы, чтобы MySQL вернул 14). Что я'Я пытаюсь сделать это:

SELECT driver, SUM(position)
FROM results
WHERE (race, season, position) IN
   (SELECT race, season, position
    FROM results
    WHERE driver = "Vettel"
    ORDER BY position ASC
    LIMIT 5) 
AND driver = "Vettel"

С (гонка, сезон, положение) является основным ключом для "Результаты" стол, конечно. Теперь проблема в том, что я могуна самом деле это не работает, как MySQL непока не поддерживают использование LIMIT во внутренних подзапросах. Как бы вы это сделали?

И для дополнительного кредита - вместо одного водителя, есть ли способ получить сумму из 5 лучших результатовкаждый Драйвер с одним запросом?

Ответы на вопрос(2)

Ваш ответ на вопрос