日期:2014-05-17  浏览次数:20307 次

请教一个算法题
数据库中的某一列index是int型
会对数据库坐插入删除操作,删除一条以后,新插入的记录 index的数据应该顺序插入 如何实现?

现在是
1
2
3
4
5
6
7

删除了2和5的两题条 现在插入一条那么插入的一条index为2
变成
1
2
3
4
6
7

我想用游标一个个遍历的话在有几万条数据的情况下是不是会变得非常慢?
有什么好的方法的解决呢?



------解决方案--------------------
一般,id是用于外部关联的,不宜删后重用

一定要重用
select top 1 a.f+1 fempty
from tb a
left join tb b on a.f=b.f-1
where b.f is null
order by a.f