У меня есть две таблицы, содержащие информацию о продукте и варианты продукта. Я пытаюсь перечислить все продукты, и их цветовые вариации.
Таблица продуктов содержит общую информацию о продукте (название, описание, включено и т. Д.)
Таблица product_attributes содержит различные варианты товара (цвет, размер, цена и т. Д.)
Я пытаюсь получить все доступные продукты, и если продукт доступен в двух цветах, он должен отображаться в виде двух списков. К сожалению, мой запрос ниже перечисляет гораздо больше вариантов, так как для каждой комбинации размеров также будет строка.
SELECT pa.price, pa.color, p.id, p.url_key, p.name FROM product_attributes AS pa INNER JOIN products AS p ON pa.product_id = p.id && p.active = 1
У кого-нибудь есть идеи, как этого добиться, самый лучший и умный способ?
Надеюсь, вы понимаете мой вопрос
Заранее спасибо,
Привет!
id mediumint(7) NO PRI NULL auto_increment
type tinyint(3) NO 1
url_key varchar(54) NO NULL
name varchar(48) NO NULL
description text NO NULL
weight float NO 0
active tinyint(3) NO 0
in_feed tinyint(3) NO 0
tax_class tinyint(3) NO 0
meta_title varchar(48) NO NULL
meta_keywords varchar(48) NO NULL
meta_description text NO NULL
manage_stock tinyint(3) NO 0
attribute_designers_id mediumint(7) NO 0
attribute_size_family_id mediumint(7) NO 0
id mediumint(7) NO PRI NULL auto_increment
product_id mediumint(7) NO MUL NULL
sku varchar(48) NO NULL
price float NO NULL
special_price float NO 0
special_price_from_date datetime NO NULL
special_price_to_date datetime NO NULL
cost float NO 0
new_from_date datetime NO NULL
new_to_date datetime NO NULL
attribute_colors_id mediumint(7) NO NULL
color varchar(24) NO NULL
attribute_sizes_id mediumint(7) NO NULL
quantity mediumint(7) NO 0