これはこの質問の続きです。
プレーヤーが最大スコアを記録したゲーム ID を取得したい。 max(score) を選択するときに、対応する game_id 列の値を取得するのに苦労しています。
私のテーブルは次のとおりです。
id game_id player_id score
1 1 1 345
2 1 2 234
3 2 1 190
4 2 2 167
5 3 4 230
6 3 1 230
7 4 2 453
8 4 3 230
私のクエリはこれまでのところ次のようになります。
SELECT s.id, t.game_id, t.score
FROM (
SELECT game_id, score
FROM stats
WHERE player_id =2
) t
LEFT JOIN stats s on s.game_id = t.game_id AND s.score = t.score
WHERE s.player_id = 2
これは私に与えます
id game_id score
2 1 234
4 2 167
7 4 453
次に、game_id を取得するために、このクエリ全体を最大スコア (id = 7) のサブクエリとして結合する必要がありますが、この最大値で結合する方法がわかりません。