准备工作:
聚合开窗函数
OVER 关键字表示把聚合函数当成聚合开窗函数而不是聚合函数。
SQL标准允许将所有聚合函数用做聚合开窗函数。
OVER(PARTITION BY class)表示对结果集按照 class 进行分区,并且计算当前行
所属的组的聚合计算结果。
排序开窗函数
row_number() over(order by score) as rownum 表示按score 升序的方式来排序,并得出排序结果的序号
RANK跳跃排序
DENSE_RANK连续排序:
dense_rank() over(order by score) as dense_rank 表示按score 升序的方式来排序,并得出排序结果的排名号。
NTILE分组排名
ntile(5) over(order by score)as ntile表示按 score 升序的方式来排序,然后 5 等分成5 个组,并显示所在组的序号。