Mysql中只在工作日运行的事件



我想在mysql中创建一个仅在工作日运行的事件,并在表中插入一行。我可以创建一个每天或n天后运行的even,但我无法做我想做的事情。即只在平日进行。

任何帮助都将是非常感激的。

提前致谢

您可以每天运行事件,如果不是工作日且if条件

delimiter //
CREATE EVENT IF NOT EXISTS your_event
ON SCHEDULE EVERY 1 DAY ON COMPLETION PRESERVE ENABLE
DO
    if DAYOFWEEK(curdate()) between 2 and 6 then
        Delete from attendance 
        where Att_mnth=Month(CurDate()) 
        and Att_day=DayOfMonth(CurDate());
    end if;
//

你应该使用DAYOFWEEK(date) MySQL函数:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_dayofweek

如果DAYOFWEEK(date)返回7或1(周六或周日),那么您应该跳过脚本。

最新更新