За допомогою наступної таблиці MySQL:
+-----------------------------+
+ id INT UNSIGNED +
+ name VARCHAR(100) +
+-----------------------------+
Як я можу вибрати один рядок І його позицію серед інших рядків у таблиці, якщо сортувати за name ASC
. Отже, якщо дані таблиці виглядають так, при сортуванні за назвою:
+-----------------------------+
+ id | name +
+-----------------------------+
+ 5 | Alpha +
+ 7 | Beta +
+ 3 | Delta +
+ ..... +
+ 1 | Zed +
+-----------------------------+
Як я міг вибрати Beta
рядок, отримуючи поточну позицію цього рядка? Результат, який я шукаю, буде приблизно таким:
+-----------------------------+
+ id | position | name +
+-----------------------------+
+ 7 | 2 | Beta +
+-----------------------------+
Я можу зробити просте, SELECT * FROM tbl ORDER BY name ASC
а потім перерахувати рядки в PHP, але здається марним завантажувати потенційно великий набір результатів лише для одного рядка.