2013-08-18 126 views
-2

我有很多旧数据。我想删除它。如何删除旧数据?

数据例如:

ID,标题,日期

什么是使用SQL来删除旧数据的最佳方法是什么?我的意思是删除行如果太旧,例如1个月。我怎样才能比较行日期和当前时间?

PS。我有日期栏。看看这个例子。

+0

如果您的行不包含任何日期信息,则无法将其删除。 –

+0

看看这个例子。我有日期栏。 – Tony

回答

1

尝试sommething这样的: -

DELETE FROM myTable WHERE [columndate]< DATE_SUB(NOW(), INTERVAL 1 MONTH); 
+0

我会选择你。 – Tony

+0

非常感谢。快乐编码!附:不要忘记接受它作为答复upvote! :) –

+0

是的。我在等几分钟。 – Tony

1

如果没有插入时的数据,那么它不能被指定用于存储任意行。 如果有一个名为createddate行,

你可以尝试

delete from mytable where DATEDIFF(createddate, now())>30 

或者你可以用

delete from mytable where createddate< DATE_SUB(NOW(), INTERVAL 1 MONTH); 
+0

> 30。那是什么?秒,几天? – Tony

+0

是的,它是几天。 –

+0

如何在第一个查询中设置秒或其他步骤? – Tony

-1

DELETE * FROM表名WHERE日期< DATE尝试();

+1

这是什么? –