SQL возвращает количество рабочих дней между 2, переданными в датах

Мне нужно написать SQL-запрос, который возвращает количество рабочих дней (понедельник - пятница) между двумя указанными датами.

Мне было интересно, что будет самым эффективным способом сделать это?

SELECT           --Start with total number of days including weekends             
(DATEDIFF(dd,@StartDate,@EndDate)+1) --Subtact 2 days for each full weekend 
(DATEDIFF(wk,@StartDate,@EndDate)*2) --If StartDate is a Sunday, Subtract 1          
ELSE 0               END)            --If EndDate is a Saturday, Subtract 1 
FROM dual

Тогда было бы также полезно убрать из этого числа праздники, такие как Рождество и День подарков.

Есть идеи?

Ответы на вопрос(6)

Ваш ответ на вопрос