以下是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中枚举行,但仅为获取一行而加载可能很大的结果集似乎有些浪费。