如何在SQL中保持唯一日期的滚动计数器?(甲骨文)
我有一个客户字段和一个日期字段,我希望我的数据如下所示:如何在SQL中保持唯一日期的滚动计数器?(甲骨文),sql,oracle,date,Sql,Oracle,Date,我有一个客户字段和一个日期字段,我希望我的数据如下所示: Customer | Date | Count ========================= Frank | 02/01 | 1 Frank | 03/22 | 2 Frank | 12/20 | 3 Mary | 01/14 | 1 Mary | 05/15 | 2 Mary | 11/28 | 3 Mary | 12/01 | 4 Vince | 06
Customer | Date | Count
=========================
Frank | 02/01 | 1
Frank | 03/22 | 2
Frank | 12/20 | 3
Mary | 01/14 | 1
Mary | 05/15 | 2
Mary | 11/28 | 3
Mary | 12/01 | 4
Vince | 06/09 | 1
Vince | 09/09 | 2
基本上每个客户和每个日期都有一个连续的计数器
多谢各位 查看如何使用
行编号()
:
为了解释关系,但保留顺序号,请尝试使用
densite\u Rank()
而不是Row\u Number()
太棒了!这就成功了。谢谢你快速简单的回复。谢谢你@vdiddy--np,很高兴我能帮上忙。一个快速的跟进:我如何解释重复的日期?如果我想继续给他们分配相同的计数呢?@vdiddy--我想densite\u Rank()
就是你要找的。
SELECT Customer, Date, Row_Number() Over (Partition By Customer Order By Date) RN
FROM YourTable
ORDER BY Customer, Date