【问题标题】:SQL Server 2008 finding missing rows [duplicate]SQL Server 2008 查找丢失的行 [重复]
【发布时间】:2013-02-19 20:01:24
【问题描述】:

我有一个巨大的数据库,特别是一个表缺少行。我知道这是真的,但我需要找到差距并展示出来。主键是序号列。我需要显示实际缺少的序列号。此表有 76,054,525 行数据。

更新,序列号由我们的软件提供,每一个都代表一个唯一的“播放”记录。我们的软件不允许播放序列号中的间隙。任何差距都会丢失数据。

【问题讨论】:

  • 进行自我加入并找到NULL?
  • 这是一个类似的问题/答案:stackoverflow.com/questions/1057389/…
  • @MichaelFredrickson 你删除了拥抱...
  • @bluefeet 有人讨厌拥抱。
  • 为什么需要显示缺失的序列号?你为什么在乎?

标签: sql sql-server-2008 gaps-and-islands missing-data


【解决方案1】:

这是一个差距和孤岛问题,很多人都写过如何解决这个问题。例如,Itzik Ben-Gan 在 SQL Server MVP Deep Dives 一书中的chapter 5 中介绍了它

但是,您为什么担心身份列中的空白?那是自然发生的事情,无法避免。你可以在这里阅读更多信息:http://sqlity.net/en/792/the-gap-in-the-identity-value-sequence/

【讨论】:

  • @billinkc,我自己只是在进行编辑以添加 Itziks 书(章节)。感谢您改进我的回答。
  • 你偷了我的答案,所以这是我能做的至少;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-09-07
  • 2015-11-10
  • 1970-01-01
  • 2023-03-31
  • 2012-12-18
  • 2021-01-05
  • 2010-09-08
相关资源
最近更新 更多