--Today
SELECT DATEADD(s, 1, DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE()), 0)) 'Today Start DateTime'
SELECT DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE()), 1)) 'Today End DateTime'
--This Week
Select DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()), 6) 'This Week Start Date'
SELECT DAteADD(dd, 6, (SELECT DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()), 6))) 'This Week End Date'
Select dateadd(s,1,DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()), 6)) 'This Week Start DateTime'
SELECT dateadd(s,-1,DATEADD(dd, 6, (SELECT DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()), 7)))) 'This Week End DateTime'
The result is:
--Next Week
SELECT DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()) + 1, 6) 'Next Week Start Date'
SELECT DAteADD(dd, 6, (SELECT DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()) + 1, 6))) 'Next Week End Date'
SELECT dateadd(s,1,DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()) + 1, 6)) 'Next Week Start DateTime'
SELECT dateadd(s,-1,DAteADD(dd, 6, (SELECT DATEADD(wk, DATEDIFF(wk, 6, GETUTCDATE()) + 1, 7)))) 'Next Week End DateTime'
--This month
SELECT DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE()), 0) 'This Month Start Date'
SELECT dateadd(d,-1,DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE())+1,0 )) 'This Month End Date'
SELECT DATEADD(s,1, DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE()), 0)) 'This Month Start DateTime'
SELECT DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE()) + 1, 0)) 'This Month End DateTime'
--Next Month
SELECT DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE())+1, 0) As 'Next Month Start Date'
SELECT dateadd(d,-1,DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE())+2,0 )) As 'Next Month End Date'
SELECT DATEADD(s,1, DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE())+1, 0)) 'Next Month Start DateTime'
SELECT DATEADD(s, -1, DATEADD(mm, DATEDIFF(m, 0, GETUTCDATE()) + 2, 0)) 'Next End DateTime'
--Previous Month
SELECT DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE())-1, 0) As 'Prev Month Start Date'
SELECT DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE()) , -1) As 'Prev Month End Date'
SELECT DATEADD(s,1, DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE())-1, 0)) 'Prev Month Start DateTime'
SELECT dateadd(d,1,dateadd(s,-1,DATEADD(mm, DATEDIFF(mm, 0, GETUTCDATE()) , -1))) 'Prev Month End DateTime'


Comments
Join the conversation! Your thoughts help the community grow.