Задать вопрос
Phoen1xx
@Phoen1xx

Как быть с длинными цепочками связей между таблицами?

Здравствуйте. Продолжая свой учебный проект по системе бронированию столиков в ресторанах, столкнулся с проблемой большого числа связей между таблицами. У меня получились следующие таблицы:
Cities -> Districts -> Restaurants -> Tables -> ReservedTimes -> User

Получается, чтобы узнать в каком городе у пользователя забронирован столик, требуется объединить 6 таблиц.
На сколько это правильный подход? Может есть более правильный способ распределить таблицы?
  • Вопрос задан
  • 54 просмотра
Подписаться 1 Сложный 1 комментарий
Помогут разобраться в теме Все курсы
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • Shultais Education
    Продвинутый SQL
    1 месяц
    Далее
  • Merion Academy
    Основы реляционных баз данных SQL
    1 месяц
    Далее
Пригласить эксперта
Ответы на вопрос 2
@desbiger
разработчик
Сделай объединяющие таблицы restaurant_user связь многие ко многим. Это будет правильнее
Ответ написан
Комментировать
shurshur
@shurshur
Сисадмин, просто сисадмин...
Вполне нормально. Главное построить все нужные индексы. Базы данных специально разрабатывают под то, чтобы они такие запросы выполняли максимально эффективно.

Уменьшить количество таблиц в join можно с помощью денормализации или кэшированием части таблиц в памяти, но для учебного проекта нет никакого смысла заморачиваться.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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