私は次のMySQLテーブルを持っています(簡略化)
DRIVER (D)
----------
id (PK)
name
RACE (RA)
---------
id (PK)
date
RESULT (RE)
-----------
id (PK)
raceid (FK -> RACE.id)
driverid (FK -> DRIVER.id)
bestRound
averageRound
numRaces、firstRace、lastRace、bestRound、bestAverageRound、およびbestRoundとbestAverageRoundが発生した日付を含むすべてのドライバーを一覧表示できるようにしたいと思います。最後の2つ、bestRoundとbestAverageRoundの日付に問題があります。
これは私がこれまでに持っているものです:
SELECT D.name, COUNT(DISTINCT RE.raceid) AS numRaces, min(RA.date) AS firstRace,
max(RA.date) AS lastRace, min(RE.bestRound) AS bestRound,
min(RE.averageRound) AS bestAverageRound
FROM DRIVER D
JOIN RESULT RE ON RE.driverid = D.id
JOIN RACE RA ON RA.id = RE.raceid
GROUP BY D.id
ORDER BY D.name
これは正しく機能しています。しかし、bestRoundとbestAverageRoundが発生したRACEテーブルから日付を選択するにはどうすればよいですか?御時間ありがとうございます。