2

我有一条 SQL 记录,其中的数字全部乱序(有间隙),例如:1,2,3,7,9,11 ..... 我只想得到第一个缺失的数字。

我试过这样的东西,但我只是不知道 SQL 让它正常工作。

strQuery = "SELECT N as NextNum FROM LOADS WHERE N > 0 AND N <= (SELECT MAX(LOAD_NO) FROM @LOADS) AND N NOT IN (SELECT LOAD_NO FROM @LOADS)"
objNextNum.Open strQuery
lastLoadNo= objNextNum("NextNum")
response.write "NEXT LOAD NUMBER IS: " & lastLoadNo

我在 ms 网站上找到了该示例,但无法使其正常工作。

谢谢你的帮助!!!

4

1 回答 1

1

在某处看到这个,不记得在哪里,或者我会给出适当的归属,但你应该能够使用这个:

SELECT  TOP 1
        LOAD_NO + 1
FROM    LOADS mo
WHERE   NOT EXISTS
        (
        SELECT  NULL
        FROM    LOADS mi 
        WHERE   mi.LOAD_NO = mo.LOAD_NO + 1
        )
ORDER BY
        id
于 2011-04-21T20:15:08.223 回答