私は他のSQLクエリの質問をかなり調べましたが、私の場合にうまくいくと思われる応答を絞り込むことができませんでした...だからここに行きます.
2 つの mySQL テーブルがあります。
players:
pid
pname
player_stats:
pid
statdate
rank
score
プレーヤーの名前と最新のスコアとランクの出力を次のように表示したいと思います。
player1 | rank10 | 123345
player2 | rank15 | 480993
pname で max(statdate) と GROUP BY を試してみましたが、取得した最も近いものは以下のとおりです。これにより、正しい行数が得られますが、最新の日付ではありません (したがって、最新のランクまたはスコアではありません)。
SELECT p.pname, s.rank, s.score
FROM players p INNER JOIN player_stats s ON p.pid = s.pid
GROUP BY p.pname
前述のように、これは近いですが、ランク/スコアは常に最後の日付のものではありません