Z następującą tabelą MySQL:
+-----------------------------+
+ id INT UNSIGNED +
+ name VARCHAR(100) +
+-----------------------------+
Jak mogę wybrać pojedynczy wiersz ORAZ jego pozycję wśród innych wierszy w tabeli, po posortowaniu według name ASC
. Więc jeśli dane w tabeli wyglądają tak, po posortowaniu według nazwy:
+-----------------------------+
+ id | name +
+-----------------------------+
+ 5 | Alpha +
+ 7 | Beta +
+ 3 | Delta +
+ ..... +
+ 1 | Zed +
+-----------------------------+
Jak mogę wybrać Beta
wiersz pobierający bieżącą pozycję tego wiersza? Zestaw wyników, którego szukam, wyglądałby mniej więcej tak:
+-----------------------------+
+ id | position | name +
+-----------------------------+
+ 7 | 2 | Beta +
+-----------------------------+
Mogę zrobić proste, SELECT * FROM tbl ORDER BY name ASC
a następnie wyliczyć wiersze w PHP, ale ładowanie potencjalnie dużego zestawu wyników tylko dla jednego wiersza wydaje się marnotrawstwem.