Как правильно построить SQL-запрос к 2 другим таблицам?

Всем привет!
Не могу разобраться как построить запрос к 2ум таблицам правильно, чтобы выводились требуемые данные.

Есть таблица banks со столбцами id_bank и bank_name
и таблица products со столбцами id_product, id_bank и product_name

В таблице matrix есть столбцы id_priority, product1, product2, product3
в столбцы product1-product3 записываются id нужных продуктов.

Требуется вывести в запрос, чтобы получилось таким образом:
20171214-12h-24kb.jpg
  • Вопрос задан
  • 208 просмотров
Решения вопроса 1
SELECT 
m.id_priority, b1.bank_name, p1.product_name, b2.bank_name, p2.product_name, b3.bank_name, p3.product_name
FROM matrix m 
INNER JOIN products p1 ON m.product1 = p1.id_product 
INNER JOIN products p2 ON m.product2 = p2.id_product 
INNER JOIN products p3 ON m.product3 = p3.id_product 
INNER JOIN banks b1 ON p1.id_bank = b1.id_bank
INNER JOIN banks b2 ON p2.id_bank = b2.id_bank
INNER JOIN banks b3 ON p3.id_bank = b3.id_bank
ORDER BY m.id_priority
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@BorisKorobkov Куратор тега MySQL
Web developer
есть столбцы id_priority, product1, product2, product3

А когда будет 100 товаров - создадите 100 столбцов? Сделайте нормальную таблицу.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы