ROW_NUMBER 函数
Coddy 高级 SQL 课程的第 3 课,共 13 课。
窗口函数用于计算当前行相关的数据。
例如,如果我们想计算截至 1995、1997、1999 年等时间点购买的所有饮料,该怎么办?如果我们想找出每个时期(2000、2004、2008)表现最好的奥运选手,该怎么办?
2000 年和 2004 年表现最好的选手可能是 James,而 2008 年表现最好的是 John,因为他比 James 更优秀。
这些问题都可以用窗口函数解决。
ROW_NUMBER() OVER () 会根据特定条件为各行编号。条件应写在 OVER () 内。如果没有指定条件,就会按相同的顺序为各行编号。
例如:
SELECT *, ROW_NUMBER() OVER () as row_num
FROM table1这会添加一列 row_num,其值从 1 到 n(n 表示行数)。
挑战
简单获取密度大于 5.677 的所有液体。
为结果编号,并将此列命名为 row_number
亲手试试
高级 SQL中的所有课
4总结
最终挑战 #1自己练习: Python 在线编译器