如果输入是日期和周末结束日(在某些商家周末日将是周五(6),周六(7)或周日(1)),那么如何计算特定的周末日期日期。 例如
f('9/2/2016',6) = '9/2/2016' -- Weekending day a Friday
f('9/2/2016',7)='9/3/2016' -- weekending day a Saturday
f('9/2/2016',1)='9/4/2016' -- weekending day a Sunday
答案 0 :(得分:0)
以下是解决问题的SQL代码:
declare @tdate datetime
declare @weekendingday int
set @weekendingday=7 --weekending saturday
set @tdate='2016-09-02'
select DATEADD (D, case when @weekendingday - DatePart (DW, @TDate) < 0 then 7+(@weekendingday - DatePart (DW, @TDate)) else @weekendingday - DatePart (DW, @TDate) end , @TDate)