Suma 5 najlepszych wartości w MySQL
Mam tabelę MySQL, w której przechowuję wyniki z mistrzostw wyścigów, tak aby każdy wiersz zawierał - obok innych danych - każdą pozycję kierowcy w określonym wyścigu. Chcę uzyskać sumę 5 najlepszych miejsc kierowcy (na przykład, jeśli najlepsze pozycje kierowcy to 1,2,2,4,5, chciałbym, aby MySQL powrócił 14). Próbuję to zrobić:
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"
Oczywiście (wyścig, sezon, pozycja) jest kluczem podstawowym do tabeli wyników. Problem polega na tym, że tak naprawdę nie mogę tego uruchomić, ponieważ MySQL nie obsługuje jeszcze LIMIT w podzapytaniach wewnętrznych. Jak byś to zrobił?
A dla dodatkowego kredytu - zamiast jednego kierowcy, istnieje sposób na uzyskanie sumy 5 najlepszych wynikówkażdy sterownik z pojedynczym zapytaniem?