我想计算两个日期之间的天数,比如开始和结束,但不包括周末和公众假期。我有公共假期日期表。我看到了一些这样的例子
select TIMEDIFF(date1,date2) from table where date1 not in (select holiday from holiday_table) and date2 not in (select holiday from holiday_table) and DAYOFWEEK(date1) not in (1,7) and DAYOFWEEK(date2) not in (1,7)
但是这不起作用,因为它只有两个日期的开始和结束,但它之间的任何东西都要离开。你有其他建议吗?
答案 0 :(得分:0)
我觉得从你对问题的描述中应该在UDF中创建它并且逻辑应该是这样的:
select count(1) from holiday_table where holiday between @start and @end
@start
和@end
之间的真正差异并减去holiday_table的数量