<分区>
我正在一个数据库驱动的网站上工作,我正在使用 WAMP
当 registrationDate 是旧的时,mysql 是否可以自动从下表中删除一行- 例如 - 一个月?
谢谢
ID | Name | registrationDate
1 | client1 | 2017-05-09 05:23:16
2 | client2 | 2017-05-11 12:13:30
<分区>
我正在一个数据库驱动的网站上工作,我正在使用 WAMP
当 registrationDate 是旧的时,mysql 是否可以自动从下表中删除一行- 例如 - 一个月?
谢谢
ID | Name | registrationDate
1 | client1 | 2017-05-09 05:23:16
2 | client2 | 2017-05-11 12:13:30
最佳答案
您可以使用一个事件,例如:
CREATE EVENT deleteEachMonth
ON SCHEDULE EVERY 1 DAY STARTS '2017-05-01 00:00:00'
-- !!! no *END*: will continue until you explicitly drop the event
DO
DELETE FROM my_table WHERE my_date < DATE_SUB(curdate(), INTERVAL 1 MONTH);
在你的情况下
CREATE EVENT deleteEachMonth
ON SCHEDULE EVERY 1 DAY STARTS '2017-05-01 00:00:00'
DO
DELETE FROM client WHERE registrationDate < DATE_SUB(curdate(), INTERVAL 1 MONTH)
关于php - 在特定时间段后从数据库表中删除一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44048984/