SELECT * FROM `partition`;
注意天明的在表中的默认顺序。
row_number() OVER (PARTITION BY COL1 ORDER BY COL2)
先将COL1进行分组,同名则同组,然后按照COL2排序,带出的结果就是COL2排序的顺序。第一名为1,第二名为2,以此类推。可倒序。
row_number() OVER (PARTITION BY COL1 )
先将COL1进行分组,同名则同组,然后按照COL1排序,带出的结果就是COL1排序的顺序。第一名为1,第二名为2,以此类推。可倒序。
row_number() OVER ( ORDER BY COL2)
按照COL2进行排序。
注意月儿的年份排名
SELECT `name`,`year`, row_number() over (partition by `name` order by `year` desc) as ‘年份排名‘ FROM `partition`;
SELECT `name`,`year`, row_number() over (partition by `name` order by `year` ) as ‘年份排名‘ FROM `partition`;
SELECT `name`,`year`, row_number() over (partition by `name` ) as ‘年份排名‘ FROM `partition`; SELECT `name`,`year`, row_number() over (partition by `name` order by `name` ) as ‘年份排名‘ FROM `partition`; --与上面结果一致
SELECT `name`,`year`, row_number() over (order by `year` ) as ‘年份排名‘ FROM `partition`;
row_number() OVER (PARTITION BY COL1 ORDER BY COL2)
原文:https://www.cnblogs.com/qianslup/p/13226404.html