Помогите, плиз, с запросом

dim-dem

Новичок
Помогите, плиз, с запросом

Есть таблица производителей "kpro_manufacturer"
И есть таблица товаров "kpro_shop_articles"

Пытаюсь в одном запросе выбрать только тех производителей, которые относятся к товарам заданной категории (categ)


SELECT kpro_manufacturer.id,kpro_manufacturer.name FROM kpro_shop_articles,kpro_manufacturer where kpro_shop_articles.articlecat=".escs($_REQUEST['categ'])." group by kpro_shop_articles.manufacturer order by kpro_manufacturer.name asc

Помогите, плиз
 

dim-dem

Новичок
никогда не работал с LEFT JOIN
можно хоть примерно написать, как это в запросе должно быть.
спасибо
 

dim-dem

Новичок
Автор оригинала: kruglov
LEFT JOIN
Пробую так, но не очень выходит.

SELECT kpro_manufacturer.id, kpro_manufacturer.name FROM kpro_manufacturer LEFT JOIN kpro_shop_articles WHERE kpro_manufacturer.id = kpro_shop_articles.articlecat GROUP BY kpro_manufacturer.id ORDER by kpro_manufacturer.name asc
 

Beavis

Banned
а ты перед тем как пробовать смотрел мануал? или просто запятую на LEFT JOIN поменял и всё должно работать?)
 

dim-dem

Новичок
производители: manufacturer | id | name |
товары: shop_articles |articlecat | manufacturer |
категории товаров: shop_cat | catid | parent_id |

shop_cat.catid = shop_articles.articlecat
shop_articles.manufacturer = manufacturer.id

нужно получить производителя по ID категории товаров

пробую так:

SELECT m.id, m.name FROM manufacturer AS m
LEFT JOIN shop_articles AS sa ON m.id = sa.manufacturer
LEFT JOIN shop_cat AS sc ON sc.parent_id = sa.articlecat
WHERE sa.articlecat = " . escs($_REQUEST['categ']) . "
GROUP BY sa.manufacturer
ORDER BY m.name ASC

все равно не выходит.
работает только в дочерних категориях, а в основных категориях выводит неправильно

помогите, плз.
 

no_santa

Снегур
Beavis
умник, а ты сам его читал? Раз ты такой продвинутый и красивый парень, возьми и напиши запрос, да?
 

baev

‹°°¬•
Команда форума
no_santa, тут не принято за других делать их работу.
 

dim-dem

Новичок
Всем спасибо за участие.
Ответ найден. Тему можно закрыть.
 
Сверху