SQL Syntax

latogt

Grünschnabel
Moin,

wollt mal fragen, ob es eine Möglichkeit gibt aus drei Tabelle, die über Schlüssel miteinander verknüpft sind, immer die ältesten 100000 Einträge herauszulöschen. Usere Datenbank läuft aufgrund sovieler Einträge über.

Gibts da ne Möglichkeit?
 
Wenn du anhand einer ID oder Datums die ältesten Einträge identifzieren kannst dann ja.
 
Je nachdem, was Du für eine Datenbank verwendest, gibt es verschiedene Methoden:

MSSQL:
SELECT TOP 10000 spalte FROM tabelle......
(Liefert die ersten 10000 Datensätze)

MySQL
SELECT spalte FROM tabelle ..... LIMIT 0,10000
(Liefert 10000 Datensätze ab Datensatz 0)


Hierzu ist es wichtig, daß die Datensätze entsprechend sortiert sind. ;)


--------- EDIT --------------
Moment mal, ich hab da was falsch gelesen ... Du willst immer die ältesten 100000 LÖSCHEN
Davor würde ich dringend abraten ... was ist, wenn Du in der Datenbank weniger als diese Anzahl drin hast - dann löschst Du quasi ALLE Daten.
--------- EDIT --------------



Gruß Dunsti
 
Zuletzt bearbeitet:
Hi,

danke erstmal fuer eure Idee. Leider funktioniert das alles nicht so. Arbeiten mit einer alten Interbase 6.0.1.6 Datenbank. Da gibt es keinen Befehl. Habe in den Referenzen nach geschaut.
 
Zurück