Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с запросом / 3 сообщений из 3, страница 1 из 1
15.10.2002, 10:59:15
    #32058269
Vic
Vic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Доброе утро всем
Помогите построить зарос
нужна выборка за месяц но только по рабочим
дням и только с 8:00 до 17:30
Формат даты (2002-09-01 15:23:00.000)
Зарание спасибо
...
Рейтинг: 0 / 0
15.10.2002, 11:05:33
    #32058276
SergSuper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Прочитайте Хелп по теме Date and Time Functions.
...
Рейтинг: 0 / 0
15.10.2002, 21:02:05
    #32058568
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Ну SergSuper. Зачем так сурово с новичком. Совет то правильный, но тут не все так однозначно.

Просто where datepart не прокатит

Нужно иметь вспомогательную таблицу, в которой даты года были помечены как рабочие или праздничные

вроде

yeardate (date datetime, workday bit)

declare @m int

select * from table
join yeardate on (convert(char(8),table.date,112) = convert(char(8),yeardate.date,112))
where yeardate.workday=1
and convert(char(5),table.date,114) between '08:00' and '17:00'
and month(table.date=@m)

Обратите внимание, что этот запрос выберет все @m за все года.
Обязательно надо сравнивать еще и год.

Сервер не хранит даты в показанном Вами формате. Так Dы их видите в QA. Что зависит от его настроек.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с запросом / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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