Fórum Join com 4 tabelas #38146

20/08/2003

0

como executar um join em 3 tabelas. ex:

SELECT C.*, D.NOME NOMEDEP, E.NOME NOMEEMP
FROM CLIENTE C LEFT JOIN DEPARTAMENTO D LEFT JOIN EMPRESA E
ON (C.DEPARTAMENTO = D.DEPARTAMENTO)
ON (C.EMPRESA = E.EMPRESA)

caso D.DEPARTAMENTO esteja vazio, o nome da empresa nao aparece.
colocando:
FROM EMPRESA E RIGHT JOIN CLIENTE C LEFT JOIN DEPARTAMENTO D
dá certo, porém, quando eu usar 4 tabelas nao sei como fazer.


Fabiogr

Fabiogr

Responder

Posts

24/08/2003

Paulo Renato

Caro fabio, experimente fazer da seguinte forma:

SELECT C.*,
D.NOME NOMEDEP,
E.NOME NOMEEMP,
x.nome nomecidade
FROM CLIENTE C
LEFT JOIN DEPARTAMENTO D on (C.DEPARTAMENTO = D.DEPARTAMENTO)
LEFT JOIN EMPRESA E ON (C.EMPRESA = E.EMPRESA)
left join cidades x on (x.cod_cidade = c.cod_cidade)

Acrescente quantos left join forem necessários. Vale lembrar que quando vc usa inner a instrução só retorna os registro que satisfaçam todas as condições dos inners.


Responder

Gostei + 0

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

Aceitar