为了账号安全,请及时绑定邮箱和手机立即绑定

时间类型增加天数,去掉星期六星期天

时间类型增加天数,去掉星期六星期天

哔哔one 2018-11-26 16:14:18
两个表表一:ID BillDate CheckDate1   2012-04-20 2012-04-27表二:ID RelationID Day1        1        5RelationID 是和表一ID关联的ID每次增加表二信息的时候,都根据我填写的Day(天数)来对应更新CheckDate的字段信息,但是这里主要要考虑到另外一个问题,就是在增加天数的时候希望不要把星期六星期天给算进去,直接增加。
查看完整描述

2 回答

?
繁星coding

TA贡献1797条经验 获得超4个赞

创建一个函数:

Create FUNCTION [dbo].[GetWorkDateDiff]
(@begin_date datetime,@days int)RETURNS datetimeASBEGINDECLARE @WorkDays int=1declare @weekday Nvarchar(9)Declare @End_Date datetime
    while (@WorkDays<@days)      begin
        select @weekday=datename(weekday,dateadd(d,@WorkDays,@begin_date))       
          if (@weekday='星期六' or  @weekday='星期日' or @weekday='Saturday' or @weekday='Sunday')     
                set @days=@days+1
        set @WorkDays=@WorkDays+1
      end
    RETURN Dateadd(dd,@WorkDays,@Begin_Date)END

测试函数:

DECLARE @OldDate Datetime='2012-4-24'DECLARE @Days int=5--直接加@Days个工作日SELECT [dbo].[GetWorkDateDiff](@OldDate,@Days)/*2012-05-01 00:00:00.000


查看完整回答
反对 回复 2018-11-30
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

你循環 增加天數,一天一天增加,直到增加夠你需要的天數。

並且每增加一天,判斷是否是星期六或者星期天,如果是,就多增加天,如果不是,就跳過。


查看完整回答
反对 回复 2018-11-30
  • 2 回答
  • 0 关注
  • 755 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信