プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

php+MySQLの環境でレコードが何行目になるかを
知る方法を教えてください。

まず下記のようなテーブルがあるとします。
|  id  |  name  |
--------------------
|  1 |  山田  |
|  2 |  田中  |
|  3 |  中村  |
|  5 |  山本  |

idはAutoIncrementで振っています。
nameは重複することはありません。

レコードは更新状況により削除されることがあるため、
idは必ずしも連番になっているわけではありません。

このような状況で上のテーブルの「山本」を

ORDER BY id ASC

で取得する際に「山本は4行目である」
ということがわかる方法を教えてください。

よろしくお願いいたします。

A 回答 (1件)

select (select count(*)+1 from hoge as t2 where t2.id< t1.id) as rank


from hoge as t1
where name='山本'
    • good
    • 1
この回答へのお礼

ありがとうございました!
とても助かりました。

お礼日時:2012/01/01 09:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A