[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Запрос с двумя табличками
Riddick
Подскажите плз с запросом. ohmy.gif

Есть две таблички: manufacturers(manufacturerid, provider) и products(productid, manufacturerid, provider)

нужно выбрать manufacturerid из таблички manufacturers, по известному значению provider(например 111), но вытащить только те manufacturerid, у которых в табличке products нет записей с другими provider(кроме 111).



Спустя 18 минут, 40 секунд (10.05.2011 - 16:47) waldicom написал(а):
Немного странная структура. Для чего нужна таблица manufacturers, она получается полностью избыточна? или?

Спустя 8 минут, 18 секунд (10.05.2011 - 16:56) Riddick написал(а):
manufacturers нужна для хранения производителей продавцов(provider). Я привел не полную структуру, т.к. остальные поля это описания и т.п.

Фишка в том, что производитель от одного продавца может быть указан в качестве производителя у товара от другого продавца и какбы id такого производителя не нужно вытаскивать.

Спустя 59 минут, 23 секунды (10.05.2011 - 17:55) Riddick написал(а):
Вприципе решил через два запроса и php функцию:
$ids = "SELECT `manufacturerid`
FROM `manufacturers`
WHERE `provider` = '
$provider'"

$no_del_ids = "SELECT DISTINCT `manufacturerid`
FROM `products`
WHERE `manufacturerid` IN ("
.join(',',$ids).") AND `provider` <> '$provider'"

$ids = array_diff($ids, $no_del_ids);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.