【发布时间】:2013-11-27 16:23:16
【问题描述】:
我需要一种方法将一个月的工作日与日历生成器的特定日期联系起来。我能够正确生成日历,但无法填充工作日。
例如,如果 01/01/1999 是星期六,则第一个工作日是 01/04/1999,下一个工作日是 01/05/1999。所以我的桌子需要看起来像这样
Date Business Date BusinessDay BusinessDaysRemaining
01/01/1999 01/04/1999 1 19
01/02/1999 01/04/1999 1 19
01/03/1999 01/04/1999 1 19
01/04/1999 01/04/1999 1 19
01/05/1999 01/05/1999 2 18
01/06/1999 01/06/1999 3 17
Etc...
然后这将在下个月重新开始。在其他月份(和周末),营业日期可以追溯到周末前的星期五,这只是我想要完成的一个例子。
我不知道从哪里开始,所以任何帮助将不胜感激。
这是在 MS SQL 2008 R2 中
【问题讨论】:
-
MS SQL 2008 V2.我也将其添加到我的问题中。
-
我认为结束这个问题的投票是不合理的。如果它关闭了,我希望其他人能和我一起重新打开它。
-
你的餐桌有假期栏吗?如果没有,您可能需要它,除非您认为这些是工作日。
-
是的,假期在主日历表中,并且已经从我创建的子表中的日期中删除。因此,此表中的 Business Dates 列表已经删除了 Weekends 和 Holidays。
-
如果 01/01/1999 是星期六,那么 01/03/1999(该星期六之后的星期一)不是工作日吗?如果您说您已经取消了假期,那么您的预期表格中的 01/03/1999 怎么会以 01/04/1999 作为 01/03/1999 的营业日期?
标签: sql sql-server date calendar