0

如果输入是日期和周结束日(在某些企业中,周末将是周五(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
4

1 回答 1

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)
于 2016-10-10T16:31:00.177 回答