SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 30.11.2011 16:07:06

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Сравнение товаров, какой запрос сделать?

Здравствуйте..
Мне необходимо сделать сравнение товаров в магазине, помогите составить запрос при такой структуре таблиц

product
------------------------------
id name
3  Монитор1
4  Монитор2
5  Монитор3


options
------------------------------
id name
1  диагональ
2  формат


variants
------------------------------
id option name
5  1        32 дюйма
7  1        40 дюймов
8  2        16:9


option_variants
-------------------------------
variant product option
5         3          1       
7         4          1       
8         3          2       
9         5          2


как это всё лучше организовать чтобы в итоге на странице получить такой результат


Параметры    Монитор1    Монитор2     Монитор2
--------------------------------------------------------------------------
диагональ     32 дюйма    40 дюймов    -
формат          16:9             -                  19:6



Сделал что то типа этого но как потом мониторы к параметрам привязать и всё это на php вывести хз

select o.name,v.name,ov.* from option_variants ov,  options o, variants v
 where ov.option=o.id and ov.variant=v.id and ov.product in(3,4)

Неактивен

 

#2 05.12.2011 00:05:33

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Сравнение товаров, какой запрос сделать?

SELECT option, SUM(IF(product=3, variant, 0)) as  'Монитор1', ...
GROUP BY option

Только зачем это делать в базе?

Неактивен

 

#3 05.12.2011 08:41:51

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Re: Сравнение товаров, какой запрос сделать?

Спасибо, мне просто нужен был совет как лучше сделать...
сделал как выше написал,  все ок, а ваш пример потом попробую))

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson