1、MySQL 窗口函数参考链接
https://blog.csdn.net/CoderSharry/article/details/135063960
https://blog.csdn.net/be_racle/article/details/125181320
https://blog.csdn.net/weixin_44852067/article/details/119570082
1)常用窗口函数
2)ROWS BETWEEN子句常见关键字含义
2、数据集
用户对电影的评级数据集
http://files.grouplens.org/datasets/movielens/
3、MySQL窗口函数案例
1)ntile、percent_rank、rank、row_number、cume_dist、lag
select departmentId,salary,
ntile(3) over() r1,
percent_rank() over(partition by departmentId order by salary) r2,
rank() over(partition by departmentId order by salary) r3,
dense_rank() over(partition by departmentId order by salary) r4,
row_number() over(partition by departmentId order by salary) r5,
cume_dist() over(partition by departmentId order by salary) r6,
lag(salary, 1) over(partition by departmentId order by salary) r7
from Employee
2)lead、first_value、last_value、nth_value
select departmentId,salary,
lead(salary, 1) over(partition by departmentId order by salary) r8,
first_value(salary) over(partition by departmentId order by salary) r9,
last_value(salary) over(partition by departmentId order by salary) r10,
nth_value(salary,2) over(partition by departmentId order by salary) r11
from Employee