Jeg tror, at følgende forespørgsel vil få det resultat, du har brug for. Først skal du beregne rang i en underforespørgsel. Jeg tror, det er meget enklere end din tilgang, du skal bare sortere dine resultater efter gevinster og diff i faldende rækkefølge (hvis felterne er tal). Så vælger du bare alle resultaterne og ændrer rækkefølge til afspillerbeskrivelse
SELECT player, wins, diff,rank from
(
SELECT player, wins, diff, @winrank := @winrank + 1 AS rank
from tmpPoradi,(SELECT @winrank := 0) r
ORDER BY wins DESC,diff DESC
) rt
ORDER BY player
Håber ikke jeg går glip af noget.