
March 14, 2010 12:17 by
CREATE FUNCTION dbo.GetWorkingDays ( @startDate SMALLDATETIME, @endDate SMALLDATETIME ) RETURNS INT AS BEGIN DECLARE @range INT; SET @range = DATEDIFF(DAY, @startDate, @endDate)+1; RETURN ( SELECT @range / 7 * 5 + @range % 7 - ( SELECT COUNT(*) FROM ( SELECT 1 AS d UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 ) weekdays WHERE d <= @range % 7 AND DATENAME(WEEKDAY, @endDate - d + 1) IN ( 'Saturday', 'Sunday' ) ) ); END GO
|
f4de65fc-ad3f-46cf-9684-fbc6309e9648|0|.0