如何根据超过六个月的时间戳列返回MYSQL中的项目并删除它们?我希望能够删除表中大于六个月的项目,这样表就不会继续增长.. 确切的查询是什么?
问问题
11823 次
2 回答
18
这是一个查询,用于根据时间戳列的值查找所有超过 6 个月的行:
select id
from your_table
where your_timestamp_column <= (now() - interval 6 month);
于 2013-01-11T17:35:44.270 回答
7
试试这个:
使用DATEDIFF函数:
SELECT * FROM tableName
WHERE DATEDIFF(CURDATE(), colName) > 180;
DELETE FROM tableName
WHERE DATEDIFF(CURDATE(), colName) > 180;
使用DATE_SUB函数:
SELECT * FROM tableName
WHERE colName < DATE_SUB(CURDATE(), INTERVAL 6 MONTH);
DELETE FROM tableName
WHERE colName < DATE_SUB(CURDATE(), INTERVAL 6 MONTH);
于 2013-01-11T17:46:08.847 回答