SELECT TOP 1 ID,NEWID FROM
(SELECT ID,(SELECT COUNT(ID) FROM TABLE1 BBB WHERE BBB.ID<=AAA.ID) AS NEWID
FROM TABLE1 AAA ORDER BY ID) CCC
WHERE ID<>NEWID
思路是先对现存的记录进行排序,并给定连续序号
ID ID NEWID
1 1 1
2 => 2 2
4 4 3
然后再从中取出最小的ID<>NEWID的记录
最终得到的记录为
ID NEWID
4 3
此时新增编号就为NEWID,即为3
如果取出记录为空,说明前面没有断号,按当前最大编号递增即可
在ACCESS下通过,MS SQL请修改相应地方