![]() |
1
6
可以将表本身联接起来以检测没有前一行的行:
这将检测1…n序列中的间隙,但不会检测重复项。 |
![]() |
2
4
我将生成一个“从1到n的所有整数”的辅助表(参见
http://www.sql-server-helper.com/functions/integer-table.aspx
对于某些使用SQL Server函数的方法,但由于这是您需要的东西,我会将它变成一个真正的表,而且对于任何SQL引擎,很容易做到这一点,只需一次),然后使用嵌套查询,
|
![]() |
3
2
如果您有rank()函数,但没有lag()函数(换句话说,SQL Server),则可以使用它(由 http://www.sqlmonster.com/Uwe/Forum.aspx/sql-server-programming/10594/Return-gaps-in-a-sequence ):
…
…或者,包括“外部限制”:
|
![]() |
4
1
如果 您的数据库支持分析函数,然后您可以使用如下查询:
输出将显示间隙,例如
这意味着数字3到7(包括7)丢失了。 |
![]() |
Duvan · 将逗号(,)替换为点(.)[副本] 2 年前 |
![]() |
Mateen Bagheri · 选择表的计数并选择其自身 2 年前 |
![]() |
SoT · SQL Server中求和函数的工作方式 2 年前 |
![]() |
NKAT · 将列值聚合到列表中会产生错误 2 年前 |
![]() |
deanpillow · 返回两列中有一个匹配值的记录 2 年前 |
![]() |
snowflakes74 · 在Dapper中异步查询多个结果 2 年前 |