窗口函数
窗口函数 | 说明 |
row_number() over() | 返回该记录在同一组内的排序(1,2,3,4...) |
rank() over() | 计算排序时,如果位次相同,会跳过之后的位次(1,2,2,4,4,6) |
dense_rank() over() | 即使是存在相同的排序,也不会跳过之后的位次(1,2,2,3,4,4,5) |
percent_rank() over() | 返回分位数,为0-1 |
sum() over() | 返回同一分组内所有记录之和,同一分组内的记录返回值相同 |
avg() over() | 返回同一分组内所有记录的平均值,同一分组内的记录返回值相同 |
max/main() over() | 返回同一分组内所有记录最大值/最小值,同一分组内的记录返回值相同 |
count() over | 返回分组内记录的数量,同一分组内的记录返回值相同 |
窗口函数与聚合函数区别:窗口函数每组返回多个行,而聚合函数每组直返回一行