[请教]计算工作日和工作时间算法
手上的项目根据用户需求,要做几份报表,需要计算到2个时间之间间隔的工作日和工作小时,准备写2个function:
WORKDAYDIFF(@fromDate datetime, @thruDate datetime) RETURN int
WORKHOURDIFF(@fromDate datetime, @thruDate datetime) RETURN int
WORKDAYDIFF需要把周六和周日排除掉
WORKHOURDIFF需要把每天17:30以后和每天08:30以前的时间排除掉(当然周六和周日的整天都要排除)
我碰到的问题是很难找出一个简洁明了的算法来做这样的2个function,在写了一堆的if else以后,准备放弃了,因为没有信心能够保证写的if else完整地覆盖所有的情况,我想应该有人做过类似的功能,能否指点一下?谢谢!