Hello可以用到期日期将行插入到表中,当达到到期日期时,行将被自动删除?或者我只需要创建一个具有过期日期的列,并且在排序时检查此值是否忽略?

最佳答案

你的需要看起来更像一个事件
如果不想添加到期日期列

CREATE EVENT delete_event ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
ON COMPLETION PRESERVE
DO BEGIN
      DELETE FROM Your_table  WHERE date>= logic for expiration_date   ;
END;

否则
DELIMITER $$
CREATE EVENT Delete ON SCHEDULE EVERY 1 DAY
DO
BEGIN
  DELETE   FROM TABLE  WHERE `date_expires` < CURRENT_TIMESTAMP();
END$$
DELIMITER

;
请注意,需要在服务器上启用MySQL事件调度程序:
SET GLOBAL event_scheduler = ON;

关于mysql - MYSQL:在表中创建具有到期日期的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55141654/

10-11 01:43