Summiere die Top 5 Werte in MySQL

Ich habe eine MySQL-Tabelle, in der ich die Ergebnisse einer Rennmeisterschaft speichere, so dass in jeder Zeile neben anderen Daten die Position jedes Fahrers in einem bestimmten Rennen enthalten ist. Ich möchte die Summe der Top-5-Platzierungen eines bestimmten Fahrers erhalten (zum Beispiel, wenn die besten Positionen eines Fahrers 1,2,2,4,5 wären, möchte ich, dass MySQL 14 ergibt). Was ich versuche zu tun, ist das:

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"

Natürlich mit (Rennen, Saison, Position) als Primärschlüssel für die Tabelle "Ergebnisse". Das Problem ist nun, dass ich das nicht wirklich zum Laufen bringen kann, da MySQL die Verwendung von LIMIT in inneren Unterabfragen noch nicht unterstützt. Wie würdest du das machen?

Und für zusätzliches Guthaben - anstelle eines einzelnen Fahrers gibt es eine Möglichkeit, die Summe der Top-5-Ergebnisse von zu erhaltenjeden Fahrer mit einer einzigen Abfrage?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage