Um Datensätze aus einer Tabelle zu löschen, deren Datumswert in der Spalte Date_ älter als 30 Tage ist, verwenden Sie diese Abfrage:
USE Database_name;
DELETE FROM Table_name
WHERE Date_column < GETDATE() - 30
...oder dies:
USE Database_name;
DELETE FROM Table_name
WHERE Date_column < DATEADD(dd,-30,GETDATE())
So löschen Sie Datensätze aus einer Tabelle, deren Datumswert in der Spalte Date_ älter als 12 Stunden ist:
USE Database_name;
DELETE FROM Table_name
WHERE Date_column < DATEADD(hh,-12,GETDATE())
So löschen Sie Datensätze aus einer Tabelle, deren Datumswert in der Spalte Date_ älter als 15 Minuten ist:
USE Database_name;
DELETE FROM Table_name
WHERE Date_column < DATEADD(mi,-15,GETDATE())
Von: http://zarez.net/?p=542
1 Stimmen
Eigentlich.... Löscht "Felder"?? Sie löschen Zeilen, nicht Felder. Wollen Sie die Felder NULL machen?
0 Stimmen
Ihr obiges SQL wählt Zeilen aus, bei denen die Tage innerhalb der letzten 30 Tage liegen.
0 Stimmen
Ist damit Ihre Frage beantwortet? wie man das 30-Tage-vor-Datum von Heute-Datum erhält
0 Stimmen
In Wirklichkeit handelt es sich um eine Tippfehlerfrage, bei der Sie die Vergleichssymbole in die falsche Richtung gedreht haben.