mike: MySQL - Rangfolge mit Mehrfachplatzierungen - zusatzfrage gelöst

Beitrag lesen

Habe es jetzt selbst rausgekriegt, geht so:

  
SELECT tab.id Teilnehmer, tab.Punkte  
      (SELECT COUNT(tab2.id)  
       FROM (SELECT t.id, COUNT(b.gewinner) AS Punkte,  
             FROM teilnehmer t  
             LEFT JOIN begegnungen b ON t.id = b.gewinner  
             GROUP BY t.id  
             ) tab2  
       WHERE tab2.Punkte > tab.Punkte  
       ) + 1 AS platzierung  
FROM (SELECT t.id, COUNT(b.gewinner) AS Punkte  
      FROM teilnehmer t  
      LEFT JOIN begegnungen b ON t.id = b.gewinner  
      GROUP BY t.id  
     ) tab  
ORDER BY 2 DESC, 1  
;

Ziemlicher Brummer, die Abfrage, so ne große hatte ich noch nie :-)
Laufzeit ist aber noch sehr in Ordnung.