0

我想计算两个日期(如开始和结束)之间的天数,但不包括周末和公众假期。我有公共假期日期的桌子。我看到了一些这样的例子

从表中选择 TIMEDIFF(date1,date2)
其中 date1 不在(从 holiday_table 中选择假期)和
date2 不在(从 holiday_table 中选择假期)和
DAYOFWEEK(date1) 不在 (1,7) 和 DAYOFWEEK(date2) 不在 (1,7)

但这不起作用,因为它只需要两个日期开始和结束,但是它之间的任何东西都会离开。你还有什么建议吗?

4

1 回答 1

0

从您对问题的描述中,我觉得它应该在 UDF 中创建,逻辑应该是这样的:

  • 检查几天之间有多少日期select count(1) from holiday_table where holiday between @start and @end
  • 然后取两者之间的真正差@start@end减去holiday_table的计数
于 2012-04-23T04:13:44.037 回答