我有一个名为的专栏sequence.此列中的数据类似于1,2,3,4,5,7,9,10,15.
我需要从表中找到丢失的序列号.什么SQL查询将从我的表中找到丢失的序列号?我期待结果如
Missing numbers
---------------
6
8
11
12
13
14
Run Code Online (Sandbox Code Playgroud)
我只使用一张桌子.我尝试了下面的查询,但没有得到我想要的结果.
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;
Run Code Online (Sandbox Code Playgroud) 假设我有一个带有整数列 ID 的表。我需要找到具有最大退货金额的missing numbersa 。sequence
我怎样才能使用一个查询来实现这一目标MS SQL?
提前致谢!
我正在使用 SQL Server 来存储数千万条记录。我需要能够查询其表以查找 Id 列中存在间隙的缺失行,因为应该没有间隙。
我目前正在使用我在 StackOverflow 上找到的解决方案:
CREATE PROCEDURE [dbo].[find_missing_ids]
@Table NVARCHAR(128)
AS
BEGIN
DECLARE @query NVARCHAR(MAX)
SET @query = 'WITH Missing (missnum, maxid) '
+ N'AS '
+ N'('
+ N' SELECT 1 AS missnum, (select max(Id) from ' + @Table + ') '
+ N' UNION ALL '
+ N' SELECT missnum + 1, maxid FROM Missing '
+ N' WHERE missnum < maxid '
+ N') '
+ N'SELECT missnum '
+ N'FROM Missing ' …Run Code Online (Sandbox Code Playgroud)