网站首页 文章专栏 row_number() OVER(PARTITION BY)-多条件排序

row_number() OVER(PARTITION BY)-多条件排序

编辑时间:2019-08-31 21:16:42 作者:蓝若忧子 浏览量:5413


    前言:row_number() OVER(PARTITION BY)-多条件排序


统计每个部门薪资最高的员工信息


    1、:row_number() over(partition by 一个或多个分组列 order by 一个或多个排序列 asc/desc) as 别名  //如果不写asc/desc的话,默认为asc 

    2、:row_number() over(distribute by 一个或多个分组列 sort by 一个或多个排序列 asc/desc) as 别名


    在使用 row_number() over()函数时候,over()里头的分组以及排序的执行晚于 where 、group by、  order by 的执行。

    

    

select *,

        row_number() over(partition by BM order by XZ desc) rn from GZB;

        

      统计结果

    pid    XB   BMid   XZ    rn    
            
        
    小7    男    C    1006    1    
    小6    男    C    1005    2    
    小5    男    C    1004    3    
    小4    男    C    1003    4    
    小3    男    C    1002    5    
    小11    男    B    1010    1    
    小10    男    B    1009    2    
    小9    男    B    1008    3    
    小8    男    B    1007    4    
    小2    男    B    1001    5    
    小15    男    A    1014    1    
    小14    男    A    1013    2    
    小13    男    A    1012    3    
    小12    男    A    1011    4    
    小1    男    A    1000    5



    出自:何冰华个人网站

    地址:https://www.hebinghua.com/

    转载请注明出处


来说两句吧
最新评论