29. juni 2006 - 10:23Der er
4 kommentarer og 1 løsning
SQL ASP count and delete entries from table
Jeg henter 100 entries fra en tabel. (Der er omkring en million entries i tabellen). Når WHERE erklæringen er overholdt udtrækkes ca 150 entries, jeg vil så vise de første 100 og slette de sidste 50 fra database tabellen hvor WHERE erklæringen er overholdt -100.
Men hvordan ???
Et eksempel (som den er nu): SELECT * FROM tabel WHERE a = 1 AND b = 0 ORDER BY DATE LIMIT 100
Alternativt, hvis du ikke kender det præcise antal entries, men det ligger omkring 150, lave en forespørgsel der sorterer på præcis samme måde som din egen, men derpå bruge det argument til LIMIT der fortæller hvor mange rækker der skal springes over før du sletter og så sætte antallet der skal slettes til f.eks. 100 så du er sikker på at få slettet de sidste cirka 50 entries:
DELETE * FROM tabel WHERE a = 1 AND b = 0 ORDER BY DATE LIMIT 100, 100
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.