powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как хранить расписание работы филиалов?
3 сообщений из 3, страница 1 из 1
Как хранить расписание работы филиалов?
    #39352338
goodw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Задача:
— есть организации и филиалы организаций
— каждый филиал работает в определенные дни и часы
— СУБД PostgreSQL

Вопрос:
— в каком виде хранить информацию о часах работы филиала? Поиск работающих в настоящее время организаций будет.



Структура таблиц примерно такая:
organisation
id title

branch
id title organisation_id

branch_hours
id branch_id day hours


Варианты:

Вариант № 1
day - smallint (0 - понедельник, 1 - вторник, ...)
hours - tsrange (храним диапазоны: 09:00 - 20:00, 09:00 - 16:00 для каждого дня)

Вариант № 2
day - intrange(диапазоны: 0-4 — понедельник-пятница, 5-6 — суббота-воскресенье)
hours - tsrange (храним диапазоны: 09:00 - 20:00, 09:00 - 16:00 для каждой группы дней с похожим расписанием)


Посоветуйте, что лучше или какие-то другие варианты.
...
Рейтинг: 0 / 0
Как хранить расписание работы филиалов?
    #39352363
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goodw,

По собственному опыту лучше хранить дату-время (т.е. дата-время начала периода, дата-время конца периода) и такое расписание как минимум на год.
Т.к. существуют исключения - выходные/праздничные дни которые переносятся.
А еще сокращенные дни и пр.
Еще могут быть сокращенный день, например, только для женщин...

В общем удачи вам! :-)
...
Рейтинг: 0 / 0
Как хранить расписание работы филиалов?
    #39352392
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
goodw,

имхо оба варианта одно и то же (не отражают реальность, ибо нет привязки к календарю) просто будет разный алгоритм поиска (при условии что праздники по барабану). Если праздники (выходные) это актуально, что очевидно, что вариант 1 позволяет временно сделать в филиале только понедельник выходным, а вариант 2 нет ( только понедельник ) в варианте 2 вместе с понедельником будут временно выходными понедельник-пятница)
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как хранить расписание работы филиалов?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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