我想在mysql中创建一个仅在工作日运行并在表中插入一行的事件。我能够创建一个每天运行的偶数或在n天之后运行,但我无法做我打算做的事情。即仅限工作日的活动。
任何帮助都将受到高度赞赏。
提前完成
答案 0 :(得分:0)
您可以每天运行该活动,如果它不是具有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;
//
答案 1 :(得分:0)
您应该使用DAYOFWEEK(date)
MySQL函数:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_dayofweek
如果DAYOFWEEK(date)
返回7或1(星期六或星期日),则应跳过该脚本。