/*取得日期區間內預設工作日*/
CREATE FUNCTION dbo.PL_getDefaultWorkingDays
(
    @StartDate DATE,
    @EndDate   DATE
)
RETURNS INT
AS
BEGIN
    RETURN
        (DATEDIFF(DAY, @StartDate, @EndDate) + 1)
        -(DATEDIFF(WEEK, @StartDate, @EndDate) * 2)
        -(CASE WHEN DATEPART(WEEKDAY, @StartDate) = 1 THEN 1 ELSE 0 END)
        -(CASE WHEN DATEPART(WEEKDAY, @EndDate) = 7 THEN 1 ELSE 0 END)
END
GO

 

SELECT dbo.PL_getDefaultWorkingDays('2018/01/01','2018/01/31')

得:23

 

創作者介紹
創作者 機車物語 的頭像
倧齊

機車物語

倧齊 發表在 痞客邦 留言(0) 人氣( 572 )