SQL语句,对字段进行自增编号

假设要编号的字段为:BH

表的主键为:BSM,


update TABLENAME 

set BH=CAST(x.rownumber as varchar(10)) from (select rownumber=ROW_NUMBER() over (order by BSM),* from TABLENAME )x 

where TABLENAME.BSM=x.BSM


可以按两步来理解,

第一步,先筛选出一个临时表,这个表加了一个rownunmber字段,就是每行的序号,


第二步,用BSM关联原来的表和这个临时表,将临时表里面的rownumber字段更新到要更新的列当中。


其中用到了ROW_NUMBER()函数,不会用的可以百度下。



你可能感兴趣的:(SQL语句,对字段进行自增编号)