27
May
2011
Date functions MSSQL
This Getdate:
2025-06-16 22:06:43Month Year
Select DateName(Month,getdate())+’ ‘+ DateName(YYYY,getdate()) Result: June 2025
Previous month end date
Select cast(floor(cast( DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,getdate()),0))as float)) as datetime) Result: 2025-05-31
Previous month start date
Select cast(floor(cast( DATEADD(s,0,DATEADD(mm, DATEDIFF(m,0,getdate())-1,0)) as float)) as datetime) Result: 2025-05-01
Current date + Hours, Minutes, Seconds
Select getdate() Result: 2025-06-16 22:06:43
Today’s date + Hours, Minutes, Seconds & Milliseconds rounded to zeros 0’s
Select cast(floor(cast(getdate() as float))as datetime)
Current month last date
Select cast(floor(cast(dateadd(mm,1,getdate() – day(getdate())+1)-1 as float))as datetime) Result: 2025-06-30
Last day of previous 12 Months
Select cast(floor(cast(DATEADD(m, – 12, getdate() – day(getdate())+1)-1 as float))as datetime) Result: 2024-06-30
Monday this week, start of this week
Select DATEADD(wk, DATEDIFF(wk,0,getdate()),0) Result: 2025-06-16
Monday last week, start of last week
Select DATEADD(wk, DATEDIFF(wk,0,getdate()),-7) Result: 2025-06-09
Sunday last week, end of last week.
Select cast(floor(cast(dateadd(d,-1,getdate()) as float))as datetime) OR Select DATEADD(wk, DATEDIFF(wk,0,getdate()),-1) Result: 2025-06-15
First day of current calendar year
Select DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) Result: 2025-01-17
First day of last calendar year
Select DATEADD(yy, DATEDIFF(yy,0,dateadd(mi,-1,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))), 0) Result: 2024-01-17
Last day of previous calendar year
Select cast(floor(cast(dateadd(mi,-1,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)) as float)) as datetime) Result: 2024-12-15
First day of next calendar year
Select DATEADD(yy, DATEDIFF(yy,-1,getdate()), 0) Result: 2026-12-15
This week last year. Monday date, week start
Select cast(floor(cast(dateadd(wk,datediff(wk,0,dateadd(yy,-1,getdate()) ),0)as float)) as datetime) Result: 2024-06-09
Todays date last year
Select dateadd(yy,-1,DATEADD(wk, DATEDIFF(wk,0,getdate()),0)) Result: 2024-06-16
First day of current month
Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) Result: 2025-06-17
Last day of current month
Select cast(floor(cast(dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate() )+1, 0))as float)) as datetime) Result: 2025-06-15
Last day of current year
Select cast(floor(cast(dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate() )+1, 0))as float)) as datetime) Result: 2025-12-31
First day of current month last year
Select dateadd(yy,-1,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) Result: 2024-06-01
Last day of the current month last year
Select cast(floor(cast(dateadd(yy,-1,dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate() )+1, 0)))as float)) as datetime) Result: 2024-06-30
First day 6 months ago
Select dateAdd(mm,-6,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) Result: 2024-12-01
No Responses to “Date functions MSSQL”