1.有主键
update T a set newOrder=
(select row_number() over (order by amount desc) from T b where a.id=b.id)
where exists(select 1 from T b where a.id=b.id)
2.无主键使用rowid关联
UPDATE T a SET a.neworder =
(SELECT b.newOrder FROM
(SELECT row_number() over(ORDER BY amount DESC) newOrder,ROWID browid FROM T) b
WHERE b.browid = a.rowid)
oracle更新某列为行号
原创
©著作权归作者所有:来自51CTO博客作者ldzyz007的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:map遍历
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章