代码之家  ›  专栏  ›  技术社区  ›  SASPYTHON

ORACLE如何使用秩函数

  •  1
  • SASPYTHON  · 技术社区  · 7 年前

    早上好

    我现在不能得到我想要的结果。

    例如,我的代码是

    select 
        a.donor_id AS ID
      , a.date_of_record
      , RANK() OVER (PARTITION BY a.donor_id,a.date_of_record  ORDER BY date_of_record) r_nk
    from table a
    

    结果是

    ID ----------------Date_of_record-----r_nk
    012                12/14/2017         1
    012                12/20/2017         1
    012                12/20/2017         1
    

    不过我想展示一下

     ID ----------------Date_of_record-----r_nk
        012                12/14/2017         1
        012                12/20/2017         1
        012                12/20/2017         2
    

    我不知道为什么上面的代码不起作用,

    非常感谢!!!

    1 回复  |  直到 7 年前
        1
  •  4
  •   SQLChao    7 年前

    或者你可以使用 ROW_NUMBER() 所以每一行都有一个唯一的值。

    select 
        a.donor_id AS ID
      , a.date_of_record
      , ROW_NUMBER() OVER (PARTITION BY a.donor_id,a.date_of_record  ORDER BY date_of_record) r_nk
    from table a