学习笔记-窗口函数(一)rank、dense_rank、row_number

84 阅读1分钟

首先可以从mysql的官方文档中找到下图:

image.png \

row_number

为记录添加序号,序号唯一且连续,图中9条记录,row_number序号为1-9 \

rank

序号不连续的排名,等值的记录排名序号可以相等,如val字段中前两条记录都为1,则对应的序号为1,val字段第三条记录与前两条不等,则rank值为3,即第n条记录如果不等于第n-1条记录,那么第n条记录的rank值即为n \

dense_rank

序号连续的排名,但是区别于row_number的是,dense_rank的序号不唯一,等值的记录排名序号可以相等,如val字段中前两条记录都为1,则对应的序号为1,val字段第三条记录与前两条不等,则dense_rank值为2