次の列を持つテーブルがあるとします。
p_id
ユーザーID
ポイント
これらの列に5000を超えるレコードがあるとします。つまり、実際にはポイントを持つユーザーがいます。各ユーザーには、ポイントレコードに固有の行があります。すべてのユーザーがどこかをクリックすることでWebサイトでポイントを獲得できると想像してみてください。彼らがクリックすると、私は彼らが得たポイントでデータベースを更新します。
つまり、ポイントを持っている人の5000以上のレコードを含むテーブルがありますよね?ここで、ポイント順に並べたい(降順)ので、MySQLクエリを実行すると、ポイントが最も多いユーザーがページの上部に表示されます。
これは、次のようなクエリを実行するだけで実行できます。
SELECT `p_id` FROM `point_table` ORDER BY `points` DESC
このクエリにより、すべてのレコードがポイントの降順で表示されます。
さて、ここで私の問題が発生します。今(注文されたとき)、各ユーザーに実際の場所を表示したいと思います。したがって、各ユーザーに次のようなものを提供したいと思います。「あなたは5374ユーザーのうち623ユーザーです」。問題は、その「623」番号を指定できないことです。
テーブルをポイント順に並べ替えるクエリを実行したいのですが、レコードがある行番号を「検索」またはカウントして、その値を返します。
誰かがこれのクエリを作成する方法を教えてもらえますか?それは本当に大きな助けになるでしょう。ありがとうございました。