SQL日期获取

当前日期
select CONVERT(varchar(10), getdate(), 120)

一个月第一天的SQL 脚本:
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)

本周的星期一
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)

一年的第一天
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)

季度的第一天
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)

当天的半夜
SELECT DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)

上个月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))

去年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))

本月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))

本年的最后一天
SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))。

本月的第一个星期一
select DATEADD(wk, DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())), 0)