Mysql的活动安排每星期日



你好,我正在尝试在Mysql上创建事件时间表并将其设置为每周日工作00:00

CREATE
    EVENT `reset_column`
    ON SCHEDULE EVERY 1 WEEK STARTS '2013-03-17 03:00:00'
    DO BEGIN
    END */$$
DELIMITER ;

这是可行的,但我只是想找到另一种方法来告诉它在每个星期的开始做(例如ON SCHEDULE every SUNDAY)

ON SCHEDULE
  EVERY 1 WEEK
  STARTS CURRENT_DATE + INTERVAL (6 - WEEKDAY(CURRENT_DATE)) DAY

这是通过获取DDL运行的日期(CURRENT_DATE),然后将截至下一个星期日的天数添加到该日期来工作的。它通过查找该日期的WEEKDAY指数(0-6),然后从周日的WEEKDAY指数(6)中减去它,来确定下一个星期日。一旦将开始日期设置为下一个星期日,则每1周重复一次。

对于日期2023-04-29,它是星期六。

2023-04-29 + INTERVAL (6 - 5) Day = 2023-04-30

最新更新