我在表格中有一列用于跟踪删除内容的时间。所有它都是通过php time()函数的时间戳。我现在需要找到那些包含90天前或更长时间创建的时间戳的行。我在查询时遇到问题。
这是我认为可行的
SELECT * FROM `table` WHERE (table.deleted + (90 * 24 * 60 * 60)) >= CURRENT_TIMESTAMP
答案 0 :(得分:4)
使用间隔怎么样?
... WHERE table.deleted < (now() - interval 90 DAY)
这将获取table.deleted
值超过90天的所有记录。
答案 1 :(得分:1)
你让操作员走错了方向。您希望文件在90天前删除,所以:
SELECT * FROM `table` WHERE (table.deleted + (90 * 24 * 60 * 60)) <= CURRENT_TIMESTAMP;
答案 2 :(得分:0)
SELECT * FROM list WHERE unix_timestamp()-lastrequest>7776000
以上示例需要:
您实际上从行的内容中减去当前时间戳(MySQL中的unix_timestamp())并检查差异是否大于7776000(这意味着90天)
希望它有所帮助。