Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > сложная выборка из 3 таблиц


Автор: fregs 2.6.2006, 09:03
Код

SELECT item_general.*,  item_need.`value` AS nvalue , item_need.need,  item_property.property, item_property.`value` 
FROM item_general, item_need, item_property 
WHERE (type = %s)  AND (item_general.id=item_need.item_id) AND (item_general.id=item_property.item_id) 
ORDER BY item_general.id


выдирал данные таким запросом, пока не обнаружил что часть "предметов" выпадает

выпадают по понятной причине item у которых нет item_property(item_general.id=item_property.item_id) или item_need(item_general.id=item_need.item_id)

как бы мне подправить запрос?
  

Автор: -=Ustas=- 2.6.2006, 09:12
Если я тебя правильно понял, то тогда так:
Код

SELECT 
    general.*,  
    need.`value` AS nvalue , 
    need.need,  
    property.property, 
    property.`value` 
FROM 
    item_general AS general
LEFT JOIN
    item_need AS need
ON
    general.id = need.item_id
LEFT JOIN
    item_property AS property
ON
    general.id = property.item_id
WHERE 
    (type = %s)
 

Автор: fregs 2.6.2006, 09:45
спасиб 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)