参考https://blog.csdn.net/wangpei1949/article/details/81437574
分为聚合开窗函数和排序开窗函数。
聚合
last_value开窗函数:返回分区中的第一个值。
lag/lead开窗函数:lag(col,n,default) 用于统计窗口内往上/下第n个值。
cume_dist开窗函数
排序开窗函数
rank 开窗函数基于 over 子句中的 order by 确定一组值中一个值的排名。如果存在partition by ,则为每个分区组中的每个值排名。排名可能不是连续的。例如,如果两个行的排名为 1,则下一个排名为 3。
percent_rank开窗函数
计算给定行的百分比排名。可以用来计算超过了百分之多少的人。如360小助手开机速度超过了百分之多少的人。 (当前行的rank值-1)/(分组内的总行数-1)
dense_rank与rank有一点不同,当排名一样的时候,接下来的行是连续的。如两个行的排名为 1,则下一个排名为 2。
将分区中已排序的行划分为大小尽可能相等的指定数量的排名的组,并返回给定行所在的组的排名。
来源:51CTO
作者:serenysdfg
链接:https://blog.csdn.net/serenysdfg/article/details/100831417