SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 02.04.2015 00:40:35

wer_ru
Участник
Зарегистрирован: 02.04.2015
Сообщений: 1

простой составвной запрос

приветствую!

mysql почти никогда не пользовался, но тут понадобилось написать запрос и... задача понимаю, что простая, но не выходит smile
есть 3 таблицы
ps_feature_product
ps_feature_value_lang
ps_product

Идея в том чтобы объединить таблицы  ps_feature_product и ps_feature_value_lang по полю id_feature (это я сделал), а потом вычесть из списка всех продуктов ps_product.id_product все найденные продукты. Т.е. мне надо получить id_product, где нет поля ps_feature_product.id_feature=10

вот бред что я написал. я не понимаю синтаксиса сложно сочинённых запросов, когда несколько JOIN и where в одном запросе

SELECT `ps_product`.`id_product` FROM `ps_product`
LEFT OUTER JOIN (SELECT `ps_feature_product`.id_product FROM `ps_feature_value_lang`,`ps_feature_product` where `ps_feature_product`.`id_feature_value` = `ps_feature_value_lang`.`id_feature_value` AND `ps_feature_product`.`id_feature`=10 
)
ON `ps_product`.`id_product` = `ps_feature_product`.`id_product`

Неактивен

 

#2 02.04.2015 14:35:40

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: простой составвной запрос

SELECT `ps_product`.`id_product` FROM `ps_product`
LEFT JOIN (SELECT `ps_feature_product`.id_product FROM `ps_feature_value_lang`,`ps_feature_product` where `ps_feature_product`.`id_feature_value` = `ps_feature_value_lang`.`id_feature_value` AND `ps_feature_product`.`id_feature`=10
) t
ON `ps_product`.`id_product` = t.`id_product` WHERE t.`id_product` is null;


Так? Если результат неправильный, то показывайте набор тестовых данных и желаемый на нем результат.

Неактивен

 

Board footer

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