SQL中提供了一些日期计算函数如dateadd,可对日期进行递增 *** 作。
基本代码如下:
declare @startdate datetime='2015-9-10'
declare @enddate datetime='2015-10-10'
declare @days int=0
set @startdate=dateadd(day,@startdate,1) --给开始日期加1天
while(@startdate<@enddate) --如果小于结束日期,一直循环处理下面
begin
IF EXISTS (SELECT * FROM holidays WHERE holiday=@startdate) --如果假日表中找到对应日期,则假日数加1
set @days=@days+1
set @startdate=dateadd(day,@startdate,1) --给开始日期加1天
end
select @days --总天数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)