--本周的第一天
SELECT DATEADD(wk, DATEDIFF(wk,0,GETDATE()), 0)
--本月的第一天
SELECT DATEADD(mm, DATEDIFF(mm,0,GETDATE()), 0)
--本年的第一天
SELECT 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(ms,-3,DATEADD(mm, DATEDIFF(mm,0,GETDATE()), 0))
--上一年的最后一天
SELECT DATEADD(ms,-3,DATEADD(yy, DATEDIFF(yy,0,GETDATE()), 0))
--DATEDIFF 返回两个指定日期的时间间隔
select DATEDIFF(day,'2017-11-12','2017-11-13') --返回:1
--DATEPART 返回指定日期的月份(day:天;year:年)
SELECT DATEPART(month, '2017-11-13') --返回:11
--DATENAME 返回指定日期是星期几
SELECT DATENAME(weekday, '2017-11-13') --返回:星期一