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

PHP*_*ver 4 mysql select date

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

Ike*_*ker 16

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

select id
from your_table
where your_timestamp_column <= (now() - interval 6 month);
Run Code Online (Sandbox Code Playgroud)


Sah*_*hah 5

尝试这个:

使用DATEDIFF函数:

SELECT * FROM tableName  
WHERE DATEDIFF(CURDATE(), colName) > 180;

DELETE FROM tableName  
WHERE DATEDIFF(CURDATE(), colName) > 180;
Run Code Online (Sandbox Code Playgroud)

使用DATE_SUB函数:

SELECT * FROM tableName  
WHERE colName < DATE_SUB(CURDATE(), INTERVAL 6 MONTH);

DELETE FROM tableName  
WHERE colName < DATE_SUB(CURDATE(), INTERVAL 6 MONTH);
Run Code Online (Sandbox Code Playgroud)