如果数据没有删除的情况下主键与行号是一致的,但在删除某些数据,行号就与主键不一致了,这时需要查询行号就需要用新的方法,在SQL Server2005之前,需要使用临时表,但在SQL Server2005中,使用ROW_NUMBER()非常方便。
以下是一个查询语句,意思是按照cid将数据排序,然后将排序后的序号填入新建的字段rowNum。
select row_number() over (order by cid) as rowNum,* from t_gene
查询结果:
2.运用
以下是本文需要达到的目的,即排序后,将排序后的序号更新到指定字段。
with ts as( select row_number() over (order by clccode) as rn,* from t_gene ) update ts set cdkxh=rn
运行结果:
未排序前。此时可以看到字段cdkxh大小参差不齐
select * from t_gene
排序后,将临时字段rn的序号更新到字段cdkxh
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。