【发布时间】:2021-03-13 12:05:22
【问题描述】:
我看过之前的主题,但我无法实现我想要的。
我有一张这样的桌子:
id status update_date
--- --- ---
A PENDING 2020-11-01
A PENDING 2020-11-02
A CONFIRMED 2020-11-03
A CONFIRMED 2020-11-04
A CONFIRMED 2020-11-05
A PENDING 2020-11-06
A PAID 2020-11-07
B CONFIRMED 2020-11-02
etc.
我想要这个:
id status rank
--- --- ---
A PENDING 1
A CONFIRMED 2
A PENDING 3
A PAID 4
B CONFIRMED 1
etc.
意思是考虑更新日期(当然还有状态变化)来对行进行排序和编号,但最终结果中没有订单日期
PS:如你所见,我可以多次从一种状态到另一种状态(PENDING -> CONFIRMED -> PENDING -> etc.)
非常感谢!
【问题讨论】:
标签: sql postgresql gaps-and-islands dense-rank