gpt4 book ai didi

sql-server-2005 - SQL查询查找丢失的序列号

转载 作者:行者123 更新时间:2023-12-03 06:49:18 28 4
gpt4 key购买 nike

我有一个名为sequence的列。此列中的数据类似于 1、2、3、4、5、7、9、10、15。

我需要从表中找到丢失的序列号。什么 SQL 查询可以从我的表中找到丢失的序列号?我期待这样的结果

Missing numbers
---------------
6
8
11
12
13
14

我只使用一张表。我尝试了下面的查询,但没有得到我想要的结果。

select de.sequence + 1 as sequence from dataentry as de 
left outer join dataentry as de1 on de.sequence + 1 = de1.sequence
where de1.sequence is null order by sequence asc;

最佳答案

怎么样:

  select (select isnull(max(val)+1,1) from mydata where val < md.val) as [from],
md.val - 1 as [to]
from mydata md
where md.val != 1 and not exists (
select 1 from mydata md2 where md2.val = md.val - 1)

给出总结结果:

from        to
----------- -----------
6 6
8 8
11 14

关于sql-server-2005 - SQL查询查找丢失的序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1057389/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com