例えば下記のようなテーブルがあったとして、ハイスコアの上位ランキングや指定idのランキングを取得したい場合がある。 CREATE TABLE `test` ( `id` int(11) NOT NULL AUTO_INCREMENT, `highscore` int(11), PRIMARY KEY (`id`), KEY `highscore` (`highscore`) ); いつもはバッチ処理してランキング用のテーブルを用意していたが、ふとMySQLだけで高速にランキングを求められないものかと思ったので色々探してみた。 まずは、こちらの記事の早い版と書かれている方法が高速で良い感じだった。 MySQL - SQL 合計値からランキングを取得する例 - Qiita しかし同点(同順位)は考慮されていなかったので、今度はこちらを参考にしたクエリを使ってみた。 mysqlだけでランキングし