Задать вопрос
@ghostiam
На Go писатель, серверов пинатель.

Таблица для «Время работы», как лучше сделать?

Здравствуйте. Мне нужно реализовать таблицу для хранения времени работы и времени обеда, с возможностью сортировки и отбора значений.
На ум приходит только решение в лоб.
_________________________________________________________________________________________________
|MonFrom|MonTo|MonLunchFrom|MonLunchTo|TueFrom|TueTo|TueLunchFrom|TueLunchTo|...|
|__08:00__|_18:00|_____12:00_____|____13:00____|__08:00__|18:00|____12:00_____|____13:00___|...|

Правильно ли оно или есть другие варианты?

UPD:
Данных о времени работы будет много и для каждого оно разное.
То есть: у меня есть список магазинов и для каждого нужно хранить данные о времени работы.
  • Вопрос задан
  • 177 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 2
dom1n1k
@dom1n1k
В данном случае, если не предполагается обширного списка исключений и особых случаев, не вижу ничего плохого в решении "в лоб". Просто и понятно. Зачем мудрить на пустом месте? Чтобы потом сочинять мега-запросы с несколькими джойнами?

Хуже, если нужно учитывать много особых случаев. Например, другой режим работы в предпраздничные дни или по вторым понедельникам каждого месяца. Тогда видимо, придется делать таблицу примерно такого вида: id магазина; id записи; несколько полей описывающих условия; время.
Ответ написан
Комментировать
@egormmm
Борітеся — поборете!
Я бы сделал :
Время, день недели, трапеза.
Время - datetime
День недели - enum
Трапеза - enum

Или разнести на 2-3 разные таблицы, а потом объединять их в запросе.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы