且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

表中的自动增量列基于另一个列值

更新时间:2022-12-09 14:48:14

您似乎要做的是使用SQL找到序列中的间隙。



如果我将数据复制为
What you appear to be trying to do is "find a gap in a sequence" using SQL.

If I replicate your data as
create table temp
(
    ChNo int
)

insert into temp values (11),(12),(13),(15), (17),(20)



以下查询将返回


The following query will return

14<br />

SELECT  TOP 1 ChNo + 1
FROM    temp mo
WHERE   NOT EXISTS
        (
            SELECT  NULL
            FROM    temp mi
            WHERE   mi.ChNo = mo.ChNo + 1
        )
ORDER BY
        ChNo



根据接受的答案改编为这篇文章 [ ^ ]

其他解决方案将在这里讨论 [ ^ ]