首页 > 代码库 > SQL Server中获取第一天、最后一天

SQL Server中获取第一天、最后一天

获取已知年份的第一天和最后一天

1.一个月第一天的

SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 

2.本周的星期一

SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)

3.一年的第一天 

SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)

4.季度的第一天

SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)

5.当天的半夜

SELECT DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)

6.上个月的最后一天 

SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) 

7.去年的最后一天 

SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)) 

8.本月的最后一天

SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))

9.本年的最后一天 

SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0)) 

10.本月的第一个星期一 

select DATEADD(wk, DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0)