我有一个庞大的数据库,特别是一个表缺少行。我知道这是真的,但我需要找到差距并展示它们。主键是序列号列。我需要显示实际缺失的序列号。该表有76,054,525行数据。
更新,序列号由我们的软件提供,每个序列号代表一个独特的“播放”记录。我们的软件不允许播放序列号中的间隙。任何差距都会丢失数据。
答案 0 :(得分:3)
这是一个差距和岛屿问题,很多人都写过如何解决这个问题。例如,Itzik Ben-Gan在SQL Server MVP Deep Dives书的chapter 5中介绍了它
但是,您为什么担心身份栏中的差距?这是自然发生的事情,无法阻止。您可以在此处详细了解:http://sqlity.net/en/792/the-gap-in-the-identity-value-sequence/