Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подсчет количества рабочих дней между 2 датами / 7 сообщений из 7, страница 1 из 1
30.07.2018, 11:46
    #39680950
assmsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
Добрый день.
Можно ли как то подсчитать кол-во рабочих дней (не учитывать праздники, просто понедельник - пятница) если известны только дата начала и дата окончания периода. Понимаю как это сделать циклом или рекурсией, а вот возможно ли это сделать без циклов и табличных выражений используя только селект?
...
Рейтинг: 0 / 0
30.07.2018, 11:50
    #39680956
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
assmsk,

а ваш sql знает когда у вас праздники?
...
Рейтинг: 0 / 0
30.07.2018, 11:59
    #39680961
assmsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
Праздники не нужно учитывать
...
Рейтинг: 0 / 0
30.07.2018, 12:06
    #39680967
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
assmskПраздники не нужно учитывать
а для этого не надо знать когда они?
...
Рейтинг: 0 / 0
30.07.2018, 12:10
    #39680970
assmsk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
Вопрос закрыт.
Нашел решение в FAQ

DECLARE
@d1 SMALLDATETIME,
@d2 SMALLDATETIME
SET @d1 = '1942-11-15'
SET @d2 = '1943-12-26'


SELECT DATEDIFF(DAY,@d1,@d2)+1-
(
DATEDIFF(WEEK,@d1,@d2)*2+
(CASE WHEN (DATENAME(dw,@d1) IN ('Sunday')) THEN 1 ELSE 0 END)+
(CASE WHEN (DATENAME(dw,@d2) IN ('Saturday')) THEN 1 ELSE 0 END)
)
...
Рейтинг: 0 / 0
30.07.2018, 12:10
    #39680971
iiyama
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
assmsk,
при такой постановке навскидку
1. Таблица-календарь ( нужно таблица, знание select, count, where, between )
2. Кол-во дней - Кол-во выходных . Знание DATEDIFF, DATEPART, календаря (в неделе 7 дней), немного математики, + учесть разницу определения дней недели в разных локалях.
...
Рейтинг: 0 / 0
30.07.2018, 12:18
    #39680977
Vladimir Baskakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчет количества рабочих дней между 2 датами
ответ складывается из дня недели первой даты, дня недели второй и количества полных недель между.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подсчет количества рабочих дней между 2 датами / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]