且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何使用 SQL Server 查找周一至周五的上周日期?

更新时间:2023-01-31 17:40:05

希望以下是你想要的,

--START OF LAST WEEK    
SELECT DATEADD(wk, DATEDIFF(wk, 6, GETDATE()), 0)

--END OF LAST WEEK    
SELECT DATEADD(wk, DATEDIFF(wk, 6, GETDATE()), 4)

DECLARE @input varchar(10)
--SET @input = '01/10/2016' 
SET @input = GETDATE()

--START OF LAST WEEK    
SELECT DATEADD(wk, DATEDIFF(wk, 6, 
CASE DATEPART(dw,@input)
WHEN 1 THEN DATEADD(d,-1,@input)
ELSE @input
END
), 0)

--END OF LAST WEEK     
SELECT DATEADD(wk, DATEDIFF(wk, 6, 
    CASE DATEPART(dw,@input)
    WHEN 1 THEN DATEADD(d,-1,@input)
    ELSE @input
    END
), 4)