Un'ultima cosa ho modificato la query in base alla mia tabella in questo modo:
SET @riga =0,
@posizione =0,
@preced =0;
SELECT @riga := @riga +1 AS riga, nome, @posizione := IF( @preced <> rank, @riga , @posizione ) AS posizione, @preced := rank AS punti
FROM classifica
ORDER BY rank DESC
La tabella risultante è la seguente:
riga nome posizione punti
1 sdfsdfsdf 1 150
2 sdfsdf 2 120
3 dfgdf 3 100
4 sdfsdfdf 4 80
5 sdfsd 5 60
6 sfgdfg 5 60
7 asdasd 7 50
8 sdfsdf 7 50
Perché mi salta la posizione numero 6??