大家来讨论下这个问题!
现在有一个表annou,其中,id为其识别字段,现在要做一个工作。要向表中插入一条记录,要求是,如果此表中的记录有被删除的,则新增记录的id要为被删除过id的最小值,以些类推,例如:原表中现在记录id为,1,2,5,7那么下次插入的记录id则为3,再插入一条则为4,以后为6,8,9,……
要求只能用一条SQL语句来实现,我已经写出了一大半了,都能实现,语句如下:
SELECT MIN(id + 1) AS NoID
FROM annou
WHERE ((id + 1) NOT IN
(SELECT id
FROM annou))
不过现在却碰到这样一个问题,比如说,现在我把1,2条记录删除以后,那么,此条语句所找出来的最小值不会是1,而是6,但是,实际上应该找出的是1,所以希望大家继续我这个问题的讨论,看有什么好的解决办法,或者有更好的方法,都希望能提出来,非常感谢!!!