Allora
codice:
SELECT @posizione:=@posizione+ 1 AS riga, nomi.*
FROM nomi,(SELECT @posizione:=0) inutile
ORDER BY punteggio desc
Dà la lista ordinata
codice:
| riga |
nome |
punteggio |
| 1 |
NICOLA |
77 |
| 2 |
SANDRA |
74 |
| 3 |
MICHELANGELO |
73 |
| 4 |
ORESTE |
72 |
| 5 |
AMBROGIO |
71 |
| 6 |
MAURO |
70 |
| 7 |
VALERIO |
69 |
| 8 |
ELISABETTA |
68 |
| 9 |
MICHELA |
67 |
codice:
SELECT * FROM
(
SELECT @posizione:=@posizione+ 1 AS riga, nomi.*
FROM nomi,(SELECT @posizione:=0) inutile
ORDER BY punteggio desc
) as result
WHERE nome="NICOLA"
Dà come risultato 1
codice:
SELECT * FROM
(
SELECT @posizione:=@posizione+ 1 AS riga, nomi.*
FROM nomi,(SELECT @posizione:=0) inutile
ORDER BY punteggio desc
) as result
WHERE nome="VALERIO"
dà come risultato 7 e così via.
Se vuoi solo la riga
codice:
SELECT riga FROM
(
SELECT @posizione:=@posizione+ 1 AS riga, nomi.*
FROM nomi,(SELECT @posizione:=0) inutile
ORDER BY punteggio desc
) as result
WHERE nome="SANDRA"
Dà (solo) 2