首頁 > 資料庫 > mysql教程 > 如何找出 MySQL 表中缺少的 ID?

如何找出 MySQL 表中缺少的 ID?

Susan Sarandon
發布: 2024-12-06 02:06:11
原創
628 人瀏覽過

How Can I Find Missing IDs in a MySQL Table?

識別MySQL 表中缺少的標識符

在MySQL 表中,可能會遇到缺失的標識符,從而在數字序列中產生間隙。要檢索這些缺少的 ID,需要執行特定查詢。

查詢缺少的ID

考慮提供的範例表:

ID Name
1 Bob
4 Adam
6 Someguy

來自在此表中,很明顯ID 2、3 和5 丟失了。要提取這些缺少的標識符,可以使用以下查詢:

SELECT a.id+1 AS start, MIN(b.id) - 1 AS end
FROM testtable AS a, testtable AS b
WHERE a.id < b.id
GROUP BY a.id
HAVING start < MIN(b.id);
登入後複製

解釋

  • 測試表是自連接的以比較相鄰行。
  • id 1(開始)表示緊接在目前ID 之後的潛在缺失ID (a.id).
  • MIN(b.id) - 1(結束)表示大於起始值的最小ID 與1 之間的差值,表示缺失ID 範圍的潛在結束位置。
  • 滿足條件的行開始

其他資源

有關此主題的更多信息,請參閱以下內容:

  • [序列間隙範例程式碼](https://web.archive.org/web/20220706195255/http://www.codediesel.com/mysql/sequence-gaps-in-mysql/)

以上是如何找出 MySQL 表中缺少的 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板