Con la seguente tabella MySQL:
+-----------------------------+
+ id INT UNSIGNED +
+ name VARCHAR(100) +
+-----------------------------+
Come posso selezionare una singola riga E la sua posizione tra le altre righe nella tabella, se ordinata per name ASC
. Quindi, se i dati della tabella hanno questo aspetto, se ordinati per nome:
+-----------------------------+
+ id | name +
+-----------------------------+
+ 5 | Alpha +
+ 7 | Beta +
+ 3 | Delta +
+ ..... +
+ 1 | Zed +
+-----------------------------+
Come posso selezionare la Beta
riga ottenendo la posizione corrente di quella riga? Il set di risultati che sto cercando sarebbe qualcosa del genere:
+-----------------------------+
+ id | position | name +
+-----------------------------+
+ 7 | 2 | Beta +
+-----------------------------+
Posso fare un semplice SELECT * FROM tbl ORDER BY name ASC
quindi enumerare le righe in PHP, ma sembra uno spreco caricare un gruppo di risultati potenzialmente grande solo per una singola riga.