Neste artigo você vai aprender qual a diferença entre INNER JOIN e OUTER JOIN, de uma maneira simples e exemplificada

diferença entre INNER JOIN e OUTER JOIN capa

Fala programador(a), beleza? Bora aprender mais sobre JOINs e também sobre SQL!

Vamos supor que temos duas tabelas A e B

Quando realizamos uma query de INNER JOIN, apenas os dados que tem ligação entre as das tabelas serão retornados

Ou seja, colunas que possuem dados excedentes, tanto em A ou B, não serão retornadas

Se um registro de A, não possui uma ligação direta com B, este registro não será um dado retornado em um INNER JOIN

Normalmente esta relação entre tabelas é feita a partir de um id, ou seja, uma foreign key

Neste mesmo caso, apenas resultados que contenham o id serão retornados ( WHERE A.id = B.ref_id )

Já nos OUTERs JOINs temos resultados diferentes

Se optarmos por um LEFT OUTER JOIN, todas os registros da tabela A serão retornados, mesmo sem ligação

Já os da tabela B, somente os com ligação teremos o retorno

E o contrário acontece com RIGHT OUTER JOIN, temos que todas as colunas sem ligação da tabela B retornam

Já as colunas da tabela A necessitam ter alguma ligação imposta na parte do WHERE da consulta

Onde que geralmente temos a ligação por meio do id

Resumindo:

  • INNER JOIN: Apenas os resultados que possuem ligação;
  • OUTER JOIN: Depende do JOIN, pode trazer dados excedentes da tabela 1 ou 2;

Conclusão

Neste artigo você aprendeu a diferença entre INNER JOIN e OUTER JOIN em SQL

Para o INNER teremos apenas resultados que possuem ligação entre ambas as tabelas

Já no OUTER dependerá de qual JOIN foi escolhido, mas dados sem ligações poderão ser obtidos

Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!

Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!

Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias

O link acima contém um cupom de desconto para os cursos!
Inscrever-se
Notificar de
guest

0 Comentários
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários