【发布时间】:2020-09-14 08:58:00
【问题描述】:
我正在做一些练习来准备我的考试,我偶然发现了一个关于 SQL 的问题。我有一个数据库,其中包含有关一级方程式车手、比赛和结果的信息。
- 在“drivers”表中,有 driver_id、last_name、first_name、country 列。
- 比赛表:race_id、season、grand_prix。
- 结果表:driver_id、points、race_id。
我正在尝试选择 2000 年、2006 年、2012 年的冠军得主的名字和姓氏,以及他们获胜年份的积分总和。 我运行了以下查询,它为我提供了每年每个司机的积分总和,但我不知道如何只获得每年的最高分。
SELECT season, first_name, last_name, SUM(points)
FROM (drivers JOIN results ON drivers.driver_id = results.driver_id)
JOIN races ON races.race_id = results.race_id
WHERE season IN(2000, 2006, 2012)
GROUP BY season, first_name, last_name;
【问题讨论】:
-
您使用的是哪个版本的 MySQL?
-
这是 MySQL 8.0 版