27
May
2011
Date functions MSSQL
This Getdate:
2025-05-02 12:08:46Month Year
Select DateName(Month,getdate())+’ ‘+ DateName(YYYY,getdate()) Result: May 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-04-30
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-04-01
Current date + Hours, Minutes, Seconds
Select getdate() Result: 2025-05-02 12:08:46
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-05-31
Last day of previous 12 Months
Select cast(floor(cast(DATEADD(m, – 12, getdate() – day(getdate())+1)-1 as float))as datetime) Result: 2024-05-31
Monday this week, start of this week
Select DATEADD(wk, DATEDIFF(wk,0,getdate()),0) Result: 2025-04-28
Monday last week, start of last week
Select DATEADD(wk, DATEDIFF(wk,0,getdate()),-7) Result: 2025-04-21
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-04-27
First day of current calendar year
Select DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) Result: 2025-01-03
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-03
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-01
First day of next calendar year
Select DATEADD(yy, DATEDIFF(yy,-1,getdate()), 0) Result: 2026-12-01
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-04-21
Todays date last year
Select dateadd(yy,-1,DATEADD(wk, DATEDIFF(wk,0,getdate()),0)) Result: 2024-05-02
First day of current month
Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) Result: 2025-05-03
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-05-01
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-05-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-05-31
First day 6 months ago
Select dateAdd(mm,-6,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) Result: 2024-11-01
No Responses to “Date functions MSSQL”