我有一个如下的表格:
colA colB(unique) colC
---------------------------------
1 1449 0.50000000
1 1451 1.03400000
1 2404 5.98750000
1 1454 6.00000000
3 1465 1.40000000
3 1467 1.56000000
3 1476 3.00000000
3 1469 4.00000000
3 1490 5.00000000
我希望将C列设置为递增的整数(保留小数位),并在A列更改时重新开始计数,如下所示:
colA colB (unique) colC
----------------------------------
1 1449 1.00000000
1 1451 2.00000000
1 2404 3.00000000
1 1454 4.00000000
3 1465 1.00000000
3 1467 2.00000000
3 1476 3.00000000
3 1469 4.00000000
3 1490 5.00000000
有什么想法可以做到这一点吗?我使用的是 SQL Server 2008。这个表可能会变得非常大。谢谢!
row_number() over (partition by colA order by id)来计算colC的序列号。 - Martin Smith