开始使用免费开始使用

未来的金牌得主

提取函数可以把表中不同位置的值取到同一行里。若数据按时间排序,您可以用 LEAD 提取函数来"预览未来"。当您需要把当前值与未来的值进行比较时,这个方法尤其有用。

本练习是课程的一部分

PostgreSQL 汇总统计与窗口函数

查看课程

练习说明

  • 针对每个年份,提取当前的金牌得主,以及相对当前行向前 3 场比赛的金牌得主。

交互式实操练习

通过完成这段示例代码来试试这个练习。

WITH Discus_Medalists AS (
  SELECT DISTINCT
    Year,
    Athlete
  FROM Summer_Medals
  WHERE Medal = 'Gold'
    AND Event = 'Discus Throw'
    AND Gender = 'Women'
    AND Year >= 2000)

SELECT
  -- For each year, fetch the current and future medalists
  ___,
  ___,
  ___ OVER (ORDER BY ___ ASC) AS Future_Champion
FROM Discus_Medalists
ORDER BY Year ASC;
编辑并运行代码