Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql] Jak znaleźć brakujące ID w bazie
M@X
post
Post #1





Grupa: Zarejestrowani
Postów: 212
Pomógł: 0
Dołączył: 18.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Witam.
Mam baze prawie 100 000 rekordów. Każdy rekord ma swój identyfikator (ID) nadawany rosnąco. Jednak w przedziale 1 - 100 000 są pewne luki. Niektóre rekordy są wykasowane.
Chciałbym sprawdzić jakich rekordów brakuje. Wylistować te brakujące ID....
Nie moge wpaść na żaden pomysł...
Może ktoś nakierować jakim zapytaniem sql mogę coś takiego wyciągnąć ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


  1. SELECT *
  2. FROM tabelka t1
  3. WHERE NOT EXISTS (
  4. SELECT *
  5. FROM tabelka t2
  6. WHERE t2.id = t1.id + 1
  7. )


Zapytanie dla każdego rekordu sprawdza czy istnieje rekord o ID większym o 1. Pamiętaj, że trzeba wyeliminować ostatni rekord w tabelce (bo wyższego ID nie będzie z definicji), ale to już zadanie domowe (IMG:style_emoticons/default/wink.gif)

Ten post edytował sowiq 5.11.2015, 17:56:42
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 06:53