Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Помогите составить запрос (Дмитрий) 07/05/2010 - 14:26:30
      Re: Помогите составить запрос (Дмитрий) 07/05/2010 - 15:43:10
      Re: Помогите составить запрос (bac) 07/05/2010 - 23:21:38
      Re: Помогите составить запрос (Дмитрий) 08/05/2010 - 06:30:13

> Original message text:
> From: Дмитрий - 07/05/2010 - 14:26:30
> Subject:Помогите составить запрос
> -----------------
> Здравствуйте!
>
> Есть таблица, описывающая атрибуты товаров:
> id, atribute_name, atribute_value, id_good
>
> Например:
> 1 Цвет Зеленый 1
> 2 Диаметр 20см 1
> 3 Глубина 3см 1
> 4 Объем 5куб.см. 2
> 5 Материал Сталь 2
> 6 Цвет Синий 3
> 7 Глубина 4см 3
> ...
>
> Здесь описаны атрибуты 3 товаров, первый - зеленый с диаметром 20 см и глубиной 3 см, второй - стальной и объемом 5 куб. см., третий - зеленый и глубина 4 см.
>
> Как одним запросом вытащить все id_good, у которых одновременно зеленый цвет и глубина 3 см?
>
> Заранее спасибо!
>


From: bac - 07/05/2010 - 23:21:38
Subject:Помогите составить запрос
-----------------
CREATE TABLE goodsDes (
id INTEGER AUTO_INCREMENT PRIMARY KEY,
atribute_name VARCHAR(20),
atribute_value VARCHAR(20),
id_good INTEGER
);

INSERT INTO goodsDes VALUES
(1, 'Цвет', 'Зеленый', 1),
(2, 'Диаметр', '20см', 1),
(3, 'Глубина', '3см', 1),
(4, 'Объем', '5куб.см', 2),
(5, 'Материал', 'Сталь', 2),
(6, 'Цвет', 'Синий', 3),
(7, 'Глубина', '4см', 3);

SELECT a.id_good
FROM goodsDes a
INNER JOIN goodsDes b
USING (id_good)
WHERE (a.atribute_name = 'Цвет' AND a.atribute_value = 'Зеленый') AND (b.atribute_name = 'Глубина' AND b.atribute_value = '3см' )


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
37099



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |