SQL计算时间差并排除周末
CREATE FUNCTION DI_FN_GET_WorkDay (@begin DATETIME , @end DATETIME ) RETURNS int BEGIN DECLARE @i INT , @j INT SET @i = 0 SET @j = 0 IF @end > @begin BEGIN WHILE DATEDIFF(d, DATEADD(d, @i, @begin), @end) <> 0 BEGIN IF DATEPART(weekday, DATEADD(d, @i, @begin)) NOT IN ( 1, 7 ) SET @j = @j + 1 SET @i = @i + 1 END END SELECT @j = ( @j + 1 ) * 24 * 60 - DATEDIFF(Minute, CAST(