SQL Server 2005
我有一个包含以下内容的表:
[order_id] [index_1]
600020001 0
600020002 0
600020002 0
600020002 0
600020003 0
...
需要更新为:-
[order_id] [index_1]
600020001 1
600020002 1
600020002 2
600020002 3
600020003 1
我正在尝试编写一个UPDATE语句,根据上面的示例填充index_1字段。我可以使用CURSOR实现这一点,但如果可能的话,最好不要使用它。
对于每个新的order_id,编号重新开始。对于每个order_id行,index_1字段递增1。
是否可以不使用游标来完成这个操作?
row_number() over(partition by..)得到 +1。在这里非常适合。 - Adriano Carneiro