Qual a diferença entre left join e right join?
Estou iniciando e gostaria de aprender a diferença com um exemplo
Tiago Perini
Curtidas 0
Respostas
Arthur Heinrich
29/06/2023
Imagine que você tem duas tabelas A e B, ambas com a coluna ID, com os seguintes valores: Tabela A: ID -- 1 2 4 Tabela B: ID -- 1 2 3 Agora você quer fazer o join entre elas: select A.ID as A, B.ID as B from A inner join B on A.ID = B.ID; O banco vai retornar os dados que existem em ambas tabelas: A B - - 1 1 2 2 select A.ID as A, B.ID as B from A left outer join B on A.ID = B.ID; O banco vai retornar todos os dados que existem na tabela A e os correspondentes que existirem na B: A B - ---- 1 1 2 2 4 null Em princípio, também poderia utilizar: select A.ID as A, B.ID as B from A right outer join B on A.ID = B.ID; O banco vai retornar todos os dados que existem na tabela B e os correspondentes que existirem na A: A B ---- - 1 1 2 2 null 3 select A.ID as A, B.ID as B from A full outer join B on A.ID = B.ID; O banco vai retornar todos os dados que existem nas tabelas A e B, com os correspondentes que existirem na outra tabela: A B ---- ---- 1 1 2 2 4 null null 3
GOSTEI 0