3 tabelas em relacionamento

12/07/2020

0

Senhores
Tenho 3 tabelas e preciso fazer um select e retornar os dados nome e area.
Segue abaixo:

empresa
id int
nome varchar

area_empresa
id_empresa
id_area

areas
id int
nome

o id da empresa esta ligado no id_empresa e o id das areas esta ligado no id_area.
pergunto:como fazer um select para que receba de volta o empresa.nome e o areas.nome
Agradeço , pois sou novo na area e gostaria dessa ajuda.
Ary Cunha

Ary Cunha

Responder

Posts

13/07/2020

Emerson Nascimento

use os comandos de junção
INNER JOIN
LEFT JOIN
RIGHT JOIN
conforme o caso
select
   e.nome,
   a.nome
from
   empresa e
left join -- neste caso, left indica que a informação da empresa será apresentada, mesmo que não haja relação empresa x área
   area_empresa ae on ae.id_empresa = e.id
left join
   areas a on a.id = ae.id_area


select
   e.nome,
   a.nome
from
   empresa e
inner join -- neste caso, serão apresentadas as informações desde que e empresa tenha áreas relacionadas a ela
   area_empresa ae on ae.id_empresa = e.id
left join
   areas a on a.id = ae.id_area

estude os comandos e você saberá aplicá-los em função da tua necessidade
Responder

13/07/2020

Ary Cunha

Emerson
Muito obrigado.
Você resolveu meu problema.
Valeu
Ary Cunha
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar