File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change 1+ -- ======================================================
2+ -- Usage: DateAddBusinessDays
3+ -- History:
4+ -- Date Author Description
5+ -- 2020-06-10 DN Intial
6+ -- ======================================================
7+ DROP FUNCTION IF EXISTS DateAddBusinessDays
8+ GO
9+ CREATE FUNCTION DateAddBusinessDays
10+ (
11+ @Days int ,
12+ @Date datetime
13+ )
14+ RETURNS datetime
15+ AS
16+ BEGIN
17+ DECLARE @DayOfWeek int
18+ SET @DayOfWeek = CASE
19+ WHEN @Days < 0 THEN (@@DateFirst + DATEPART (weekday , @Date) - 20 ) % 7
20+ ELSE (@@DateFirst + DATEPART (weekday , @Date) - 2 ) % 7
21+ END ;
22+
23+ IF @DayOfWeek = 6
24+ SET @Days = @Days - 1
25+ ELSE IF @DayOfWeek = - 6
26+ SET @Days = @Days + 1 ;
27+
28+ RETURN @Date + @Days + (@Days + @DayOfWeek) / 5 * 2 ;
29+ END
30+ /*
31+ SELECT dbo.DateAddBusinessDays(-2,GETDATE())
32+ SELECT dbo.DateAddBusinessDays(5,GETDATE())
33+ */
You can’t perform that action at this time.
0 commit comments