▽1
●
arayayamakun ●200ポイント ベストアンサー |
PHP側での処理でも構わないなら、それこそjamisさんの過去の質問にある方法を使用すれば、わかりやすくできますよ。
まずは
SELECT * FROM tbl GROUP BY name
でグループ分けしておいて。
後は
http://q.hatena.ne.jp/1391162718
のいずれかの方法を使えば、思い通りの結果になるはずです。
SQLでまとめることもできるけど、少々ややこしいので私ならPHP側での処理を勧めますね。
グループでまとめて、PHPで順位付けすれば良いだけなので、そちらのほうが楽だと思います。
そんなに速度が変わらないなら、見やすくしておかないと、後で変更があったときなんかに困るんですよね。
そのレコード数が100万とかならPHPの方が遅くなると思うので、データベース側での処理が良いと思いますけど。