Create function f_GetDate( @date datetime, --基础日期 @workday int --要增加的工作日数 )returns datetime AS begin declare @isNotFind int=1 ---定义位置没有找到标记 while @isNotFind >0 begin declare @tempTime datetime --查找固定的日期 select @tempTime=reg.f_WorkDayADD(GetDate(),24) --比对日期 select @isNotFind=count(*) from Holidays where Convert(varchar(10),WorkDayInRest,120)=Convert(varchar(10),@tempTime,120) Or Convert(varchar(10),RestDayOnWork,120)=Convert(varchar(10),@tempTime,120) set @date=@tempTime end return(@date) end