zoukankan      html  css  js  c++  java
  • row_number() OVER (PARTITION BY COL1 ORDER BY COL2)

    一、数据源显示

      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进行排序。

    三、结果展示:

    3.1 排名只有一个值,不会出现两个同名次。

     注意月儿的年份排名

        SELECT `name`,`year`, row_number() over (partition by `name` order by `year` desc) as '年份排名' FROM `partition`;

      

    3.2  可以降序。

        SELECT `name`,`year`, row_number() over (partition by `name` order by `year` ) as '年份排名' FROM `partition`;

    3.3 不要order by

         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`; --与上面结果一致

    3.4 不要partition by

    SELECT `name`,`year`, row_number() over (order by `year` ) as '年份排名' FROM `partition`;     

  • 相关阅读:
    在ubuntu下安装phpmyadmin 出现404错误
    Jquery插件收藏
    PHP 时区设置
    Jquery动态进行图片缩略
    CSS设置图片垂直居中的方法
    解决CI框架的Disallowed Key Characters错误提示
    @Component默认是单例还是多例?
    ehcache的heap、off-heap、desk浅谈
    nginx负载均衡分配策略有哪些?
    HashSet的实现原理,简单易懂
  • 原文地址:https://www.cnblogs.com/qianslup/p/13226404.html
Copyright © 2011-2022 走看看