sql中的日期计算

-- 前一天 00:00:00
select DATEADD(DAY,  DATEDIFF(DAY,0,GETDATE())-1,  0)
-- 前一天末 (23:59:59.997)
select DateAdd(ms,-3,DATEADD(day,  DATEDIFF(day,0,GETDATE()),  0)) 
-- 上周第一天(周一)
select  DATEADD(wk,  DATEDIFF(wk,0,GETDATE())-1,  0) 
-- 上周末(周日)(23:59:59.997)
select DateAdd(ms,-3,DATEADD(wk,  DATEDIFF(wk,0,GETDATE()),  0)) 
上月第一天
select  DATEADD(MM,  DATEDIFF(MM,0,GETDATE())-1,  0) 
上月末(23:59:59.997)
select DateAdd(ms,-3,DATEADD(MM,  DATEDIFF(MM,0,GETDATE()),  0)) 

原文地址:https://www.cnblogs.com/mincyw/p/2018356.html