Can anyone please explain how this line of SQL will give me the first day of the week of the date passed in. With 7 being the parameter at the back end dateadd parameter that will return sunday as the first day of the week but I don't get the datediff portion.
Select dateadd(wk, datediff(wk, 6, '04/09/2007'), 7)
I will separate the operation into two separate components.
First, this portion calculates the number of full weeks between day 6 of the first week and today. (For 2007/04/30, that is 5599.) It is necessary to remember that day 0 is actually the first day, day 1 is the second day, etc.
--
SELECT datediff(wk, 6, getdate())
5599
Then that value is used to find the first date of the week if you added 5599 weeks to Day 6 of the first week.
|||
SELECT dateadd(wk, 5599, 6)2007-04-29 00:00:00.000
Thanks for replying
I thought that is what was happening but the datediff gave me a hard time.
Thanks again
No comments:
Post a Comment