Спасибо, за вашу помощь, я опубликовал упрощенную версию своей проблемы, но я действительно не понимал, как применить левое соединение к большому, а именно:
SELECT d.type,
d.item ,
if(d.type='I', a.name, b.name) as name,
if(d.type='I', c.price,0) as price,
if(d.type='I',if(d.taxes='yes',
(c.priceWithTax*d.weight), (c.price*d.weight)),0) as totalprice
FROM d
inner join a on d.item=a.id
inner join c on d.item=c.item
where c.sede =1
Проблема в том, что когда d.type = 'I', мне нужны элементы из таблицы a, но если d.type = 'S', мне нужны элементы из таблицы B, цены указаны в таблице c.
Большое спасибо.