3 tabelas em relacionamento

MySQL

Banco de Dados

12/07/2020

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

Curtidas 1

Respostas

Emerson Nascimento

Emerson Nascimento

12/07/2020

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
GOSTEI 0
Ary Cunha

Ary Cunha

12/07/2020

Emerson
Muito obrigado.
Você resolveu meu problema.
Valeu
Ary Cunha
GOSTEI 0
POSTAR