Maison >base de données >tutoriel mysql >Comment trouver les identifiants auto-incrémentés manquants dans une table SQLite ?

Comment trouver les identifiants auto-incrémentés manquants dans une table SQLite ?

DDD
DDDoriginal
2025-01-11 08:20:42996parcourir

How to Find Missing Auto-Incremented IDs in an SQLite Table?

Utilisez une requête de valeur manquante pour rechercher les identifiants manquants dans une table

Cette requête est conçue pour identifier les ID manquants dans une table avec un champ de clé primaire unique à incrémentation automatique, où les entrées supprimées peuvent avoir créé des lacunes dans les valeurs d'ID. Par exemple, un tableau avec les données suivantes :

<code> ID  | Value    | More fields...</code>

2 | Chat |...
3 | Poisson |...
6 | Chien |...
7 | Oryctérope | 9 | Chouette |...
10 | Cochon |...
11 | Blaireau | ...
15 | Mangouste | 19 | Furet |
Le résultat attendu sera une liste d'identifiants manquants :

1
<code> ID</code>
4
5

8
12
13
14
16
17
18

Nous faisons trois hypothèses : le premier identifiant initial est 1, l'identifiant maximum est le dernier identifiant et il n'y a aucun identifiant supprimé après le dernier identifiant actuel.

Pour SQLite, une solution simple existe :

Cette requête identifie efficacement les identifiants manquants en générant une séquence de nombres du premier identifiant au dernier identifiant et en excluant les identifiants existants, laissant les valeurs manquantes. Il s'agit d'un moyen simple et efficace de résoudre ce problème dans SQLite.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn