如何将MYSQL中的项目返回超过6个月?

时间:2013-01-11 17:34:53

标签: mysql date select

如何根据Timestamp列返回MYSQL中的项目超过六个月并删除它们?我希望能够删除表中超过六个月的项目,以便表格不会持续增长..具体的查询是什么?

2 个答案:

答案 0 :(得分:16)

这是一个查询,根据时间戳列的值查找超过6个月的所有行:

select id
from your_table
where your_timestamp_column <= (now() - interval 6 month);

答案 1 :(得分:5)

试试这个:

使用 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);