利用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分页故障解决一例
: