-2

私は次の表を持っています

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

これはどのように行うことができますか?それも可能ですか?

4

1 に答える 1

8

あなたが使用することができますdense_rank()

select id,
  dense_rank() over(order by id)  Counter
from yourtable

SQL FiddlewithDemoを参照してください

結果:

| ID | COUNTER |
----------------
| 12 |       1 |
| 12 |       1 |
| 25 |       2 |
| 25 |       2 |
| 78 |       3 |
| 78 |       3 |
| 78 |       3 |
于 2013-01-17T15:54:17.310 に答える