Slon747
Новичок
Есть 3 таблицы: товары, типы цен и цены.
У каждого товара может быть несколько цен (разные типы цен), а может не быть ни одной.
Требуется получить все товары и цены примерно в таком виде:
Т.е. сначала товар, потом детализация по ценам этого товара.
Как правильно это сделать, чтобы в цикле по выборке товаров не вызывать запрос по ценам?
Многократное левое соединение товаров с ценами для каждого типа цен мне совсем не нравится.
Есть ли элегантное решение?
Код:
CREATE TABLE products (
uuid varchar(36) NOT NULL DEFAULT '',
name varchar(100),
PRIMARY KEY (uuid)
)
CREATE TABLE pricetypes (
uuid varchar(36) NOT NULL DEFAULT '',
name varchar(50),
PRIMARY KEY (uuid)
)
CREATE TABLE prices (
pricetype varchar(36),
product varchar(36),
price double DEFAULT 0
)
ALTER TABLE prices
ADD UNIQUE INDEX UK_prices (pricetype, product);
Требуется получить все товары и цены примерно в таком виде:
Код:
-Товар1
-ТипЦен1 Цена
-ТипЦен2 Цена
-ТипЦен3 Цена
-Товар2
-ТипЦен1 Цена
-ТипЦен2 Цена
Как правильно это сделать, чтобы в цикле по выборке товаров не вызывать запрос по ценам?
Многократное левое соединение товаров с ценами для каждого типа цен мне совсем не нравится.
Есть ли элегантное решение?
Последнее редактирование: