如何在周末和假日之外添加天数(3天)?
示例:2015年10月16日(星期五)+ 3天= 2015年10月21日(星期三)
这是我的查询,但如何排除周末和假日?这可能吗?
INSERT INTO TEMPORARY(ISBN,title,author,First_Name,Last_Name,STATUS,DATE,Return_Date,UserID)
VALUES (i,t,a,f,l,1,NOW(),NOW()+ INTERVAL 3 DAY,u);
答案 0 :(得分:1)
目前尚不清楚您的确切目标是什么?
我的猜测NOW()
工作日是:
Monday (+3) = Thursday
Tuesday (+3) = Friday
Wednesday (+5) = next Monday
Thursday (+5) = next Tuesday
Friday (+5) = next Wednesday
Saturday (+4) = next Wednesday ?
Sunday (+3) = next Wednesday ?
如果it is correct,您的查询可以转换为:
INSERT INTO TEMPORARY(ISBN,title,author,First_Name,Last_Name,STATUS,DATE,Return_Date,UserID)
VALUES (i,t,a,f,l,1,NOW(),NOW()+ INTERVAL (IF(WEEKDAY(date1) IN (6,0,1),3,IF(WEEKDAY(date1) = 5,4,5))) DAY,u);
如果您需要查看其他假期并根据官方假期日历延长期限,我完全同意@GordonLinoff评论:您需要额外的表格以保留所有假期。但即使进行了这种改变,动态获取正确的日期也不是一件容易的事。