2009-04-29 7 views
24

Kann mir jemand mit dem Skript helfen, das die Daten älter als das bestimmte Datum löschen wird.Löschen von einer Tabelle basierend auf dem Datum

Dank

+0

Klärung würde immens helfen ... vielleicht lassen Sie uns wissen, wie Sie wissen, wie alt das Datum ist, das Spaltenformat und Datentyp, Zeit ein Problem, etc. – AnonJr

Antwort

42
delete from YOUR_TABLE where your_date_column < '2009-01-01'; 
4

Das ist ziemlich vage. Mögen Sie in SQL bedeuten:

DELETE FROM myTable 
WHERE dateColumn < '2007' 
18

Daten löschen, die 30 Tage und älter

DELETE FROM Table 
    WHERE DateColumn < GETDATE()- 30 
5

oder ORACLE Version:

delete 
    from table_name 
where trunc(table_name.date) > to_date('01/01/2009','mm/dd/yyyy') 
+0

Frage hat sqlserver Tag –

+0

mein schlechtes, las ich ein Tag von "sql", sorry – northpole

5

Sie verwenden:

DELETE FROM tableName 
where your_date_column < '2009-01-01'; 

aber behalten dass die oben im Auge ist wirklich

DELETE FROM tableName 
    where your_date_column < '2009-01-01 00:00:00'; 

Nicht

DELETE FROM tableName 
     where your_date_column < '2009-01-01 11:59'; 
Verwandte Themen