次の 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 +
+-----------------------------+
PHP で簡単SELECT * FROM tbl ORDER BY name ASC
に行を列挙することはできますが、1 行だけのために潜在的に大きな結果セットをロードするのは無駄に思えます。