创建删除事件,每天删除旧记录

时间:2016-07-08 05:45:10

标签: mysql sql-delete

我想删除超过1天的记录。实现它的最佳方法是什么?我以前从未使用过活动所以我没有遇到什么问题。 例如:我想删除start_time超过1天的记录。 通过做一些研究,我达到了这一点。

CREATE EVENT deleteRecords
ON SCHEDULE EVERY 1 DAY
ON COMPLETION PRESERVE
DO 
DELETE FROM databaseName.tableName WHERE start_time < DATE_SUB(NOW(), 
INTERVAL 1 DAY)

1 个答案:

答案 0 :(得分:0)

有很多方法可以达到你想要的效果。

//sample 1
DELETE FROM databaseName.tableName WHERE DATE_ADD(start_time,INTERVAL 1 DAY) < NOW();

//sample 2
DELETE FROM databaseName.tableName WHERE ADDTIME(start_time,"1 00:00:01") =< NOW();

您帖子中的代码也可以使用。但如果您不确定自己在做什么,请不要忘记先备份数据。

  

参考Date and Time Functions