Join in three tables does not show all results

Asked

Viewed 23 times

0

SELECT 
*
FROM 
produto_unidades
join produto_notas on produto_notas.id = produto_unidades.produtoNota_id
join produto_licitacoes on produto_licitacoes.id = produto_notas.produtoLicitacoes_id
where produto_unidades.unidade_id = 2

The Join works correctly, but I need ALL the products in the table produto_licitacoes are displayed, regardless of having no relationship in the other tables.

  • 2

    Tried the right join?

  • @Andersoncarloswoss tried, without result

  • 2

    Can you do a [mcve] demonstrating table structures and example records? You can use http:/sqlfiddle.com to show how it is.

  • I believe that did not succeed because the second Join may have caught some results..

  • @Inhares can explain better?

  • @Italorodrigo I think I traveled =p??

Show 1 more comment

1 answer

1


You can use the left join (I left the "main" table first to be highlighted as such, but you can keep the structure that’s already there and use the right join)

SELECT 
*
FROM produto_licitacoes 
left join produto_unidades on produto_licitacoes.id = produto_notas.produtoLicitacoes_id
left join produto_notas on produto_notas.id = produto_unidades.produtoNota_id
where produto_unidades.unidade_id = 2

Browser other questions tagged

You are not signed in. Login or sign up in order to post.