mysql - 基于stamp mySQL删除旧数据

标签 mysql

我想删除表中时间戳早于 2 天的所有数据。我创建了以下查询:

DELETE FROM temporary_data WHERE stamp < CURDATE() - INTERVAL 1 DAY;

但这似乎不起作用。我的邮票看起来像这样:2014-04-29 15:37:00

我认为 CURDATE() 只返回 2014-04-30,与邮票不匹配。谁能帮助我?

最佳答案

删除前始终选择

SELECT from temporary_data
where stamp between date_sub(now(),INTERVAL 2 DAY) and now();

删除查询

delete from temporary_data
where stamp between date_sub(now(),INTERVAL 2 DAY) and now();

您可以根据您的需求修改间隔,更多内容请阅读http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

关于mysql - 基于stamp mySQL删除旧数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23381935/

相关文章:

javascript - 从 restify 获取正确的 json 输出

mysql - 带有 mysql phpmyamdin 的 Syslog-NG 不能实时存储数据?

mysql - 如何在mysql查询中合并两个表

mysql - 有没有办法在 ALTER TABLE 期间关闭临时表的创建?

java - 如何使用 sendirect() 方法将搜索查询从 servlet 传递到 jsp

php - 通过php将数据插入mysql多对多关系

MySQL检查另一个表中是否存在相同的值3次

mysql - 客户数据库结构

mysql - 以 Ruby on Rails 3 中 2 个表的形式显示数据

c# - 使用C#在mysql中插入海量流数据