如何自动增加更新SQL Server表中的列

时间:2015-12-28 03:41:43

标签: sql-server

如何基于对其他列进行排序来自动增加更新SQL Server表中的列,并在其他列中的值更改后重新启动增量。

我的表结构和数据是这样的:

Name   Class OldSrNo NewSrNo
----------------------------
aa     1      1        1
bb     1      2        2
aa     1      3        3
bb     2      4        1
cc     2      5        2
dd     2      6        3
aa     2      7        4

我想更新旧的sr no看起来像NewSrNo

1 个答案:

答案 0 :(得分:0)

你问这个吗,

Declare @t table (Name varchar(50),   Class int, OldSrNo int)
insert into @t values
('aa',     1,      1)       
,('bb',     1,      2)        
,('aa',     1,      3)        
,('bb',     2,      4)        
,('cc',     2,      5)        
,('dd',     2,      6)        
,('aa',     2,      7)  

select *, 
row_number()over(partition by class order by class)NewSrNo 
from @t