row_number() over(partition by 列名1 order by 列名2 desc)的使用
表示根据 列名1 分组,然后在分组内部根据 列名2 排序,而此函数计算的值就表示每组内部排序后的顺序编号,可以用于去重复值
与rownum的区别在于:使用rownum进行排序的时候是先对结果集加入伪列rownum然后再进行排序,而此函数在包含排序从句后是先排序再计算行号码.
—查询所有姓名,如果同名,则按年龄降序
SELECT name,age,detail,ROW_NUMBER() OVER(...
转载
2019-06-13 15:22:03 ·
309 阅读 ·
0 评论