sql特殊日期

--a. 本月的第一天
select dateadd(mm, datediff(mm,0,getdate()), 0) as 本月的第一天

--b. 本月的最后一天
select dateadd(ms,-3,dateadd(mm, datediff(mm,0,getdate())+1, 0)) as 本月的最后一天

--c. 上个月的最后一天
select dateadd(ms,-3,dateadd(mm, datediff(mm,0,getdate()), 0)) as 上个月的最后一天

--d. 本周的星期一
select dateadd(wk, datediff(wk,0,getdate()), 0) as 本周的星期一

--e. 本季度的第一天
select dateadd(qq, datediff(qq,0,getdate()), 0) as 本季度的第一天

--f. 本季度的最后一天
select dateadd(ms,-3,dateadd(qq, datediff(qq,0,getdate())+1, 0)) as 本季度的最后一天

--g. 本月的第一个星期一
select dateadd(wk, datediff(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0) as 本月的第一个星期一

--h. 本年的第一天
select dateadd(yy, datediff(yy,0,getdate()), 0) as 本年的第一天

--i. 本年的最后一天
select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate())+1, 0)) as 本年的最后一天

--j. 去年的最后一天
select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate()), 0)) as 去年的最后一天 

  

猜你喜欢

转载自www.cnblogs.com/lgx5/p/11614067.html