早上好
我现在无法获得想要的结果。
例如我的代码是
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
我不确定上面的代码为什么不起作用,
非常感谢您!
答案 0 :(得分:3)
或者,您可以使用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