利用Oracle rownum让表排序字段值连续


利用Oracle rownum让表排序字段值连续

1、需求说明

表(eval_index)中有字段如下:

表字段

描述

说明

ID

主键

 

GROUP_ID

分组编号

 

SORT_NUM

排序序号

按照分值编号并排序:1、2、…

由于删除或其他操作,导致sort_num序号不连续;需要不改变原来的排序,保持其编号连续。

2、利用rownum功能实现

update eval_index a seta.sort_num = (

  select b.rn from (select rownum rn ,id

      from (select * from eval_index wheregroup_id = ?

order by sort_num)

    ) b

    where a.id = b.id

)

where index_id = ?;

Oracle数据库中的rownum和ORDER BY执行顺序

使用rowid和rownum获取记录时要注意的问题

[Oracle] rownum和分页

rownum分页故障解决一例

相关内容