I’m working on a little project right now that does some examination of the current day of the week against a database table containing events by year, week number, and a specific day of the week.
Curious to know if my event for this week would run as scheduled due to the impending arrival of 2016, I did some checking. Microsoft SQL Server thinks that we’re currently in week 53 (?) of 2015, but Outlook is telling me we’re in week 1 of 2016, because January 1st is on Friday!
My workaround was to duplicate the event for week 1 of 2016 in a new record for “week 53” of 2015, but the reason seems worth exploring.
Microsoft SQL Server is smart enough to know the difference between the last days of the current year and the first days of the new in the context of the week that bridges the two years. Any days in the current year that extend beyond week 52 (starting on Sunday) are called “week 53”, please read Levitra versus Viagra http://www.canadianpharmacy365.net/viagra-vs-levitra/ (up through Saturday) are considered week 1. The next Sunday starts week 2.
In 2015, December 27th fell on Sunday, and January 1st is on Friday of the same week. So, from a SQL Server perspective:
- Sunday, December 27th through Thursday, December 31st are in “week 53” of 2015;
- Friday, January 1st and Saturday, January 2nd are week 1 of 2016, and
- Sunday, January 3rd through 9th are a full week 2.
So my workaround should work as long as the event day is before January 1st.