我有下表
ID
12
12
25
25
78
78
78
我需要能够在ID
更改时增加计数器值。
ID **COUNTER**
12 1
12 1
25 2
25 2
78 3
78 3
78 3
如何做到这一点?它甚至可能吗?
答案 0 :(得分:8)
您可以使用dense_rank()
:
select id,
dense_rank() over(order by id) Counter
from yourtable
结果:
| ID | COUNTER |
----------------
| 12 | 1 |
| 12 | 1 |
| 25 | 2 |
| 25 | 2 |
| 78 | 3 |
| 78 | 3 |
| 78 | 3 |