利用oracle rownum让表排序字段值连续
1、需求说明
表(eva l_index)中有字段如下:
| 表字段 |
描述 |
说明 |
| ID |
主键 |
? |
| GROUP_ID |
分组编号 |
? |
| SORT_NUM |
排序序号 |
按照分值编号并排序:1、2、… |
由于删除或其他操作,导致sort_num序号不连续;需要不改变原来的排序,保持其编号连续。
2、利用rownum功能实现
update eva l_index a seta.sort_num = ( select b.rn from (select rownum rn ,id from (select * from eva l_index wheregroup_id = ? order by sort_num) ) b where a.id = b.id ) where index_id = ?;
?