--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 去年的最后一天