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

Mysql. Как объеденить две формы нормализации?

Допустим есть таблицы
1. главная, содержит информацию о компаниях
id | name | address

2. первая таблица нормализации, содержит бренды с которыми работает компания (одна фирма — много брендов)
brend_id | firm_id

3. вторая таблицы нормализации, содержит города в которых работает компания (одна фирма — много городов)
town_id | firm_id

Какой запрос может извлечь все компании по определённому бренду и определённому городу? Пока в голову пришла идея сделать третью таблицу нормализации
firm_id | brend_id | town_id
но смущает большой оверхед
  • Вопрос задан
  • 2657 просмотров
Подписаться 3 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Stepik
    PRO C#. Базы данных
    2 месяца
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Java-разработчик + ИИ
    9 месяцев
    Далее
Решения вопроса 1
@edogs
select * from company left join brands on company.id=brands.firm_id left join towns on company.id=towns.firm_id
where brands.brend_id in (нужный бренд или несколько) and towns.town_id in (нужный город или несколько)
group by company.id
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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