Quais são os tipos de JOINS do SQL?

O que são JOINs no SQL? 

Em SQL, os JOINs são utilizados para combinar linhas de diferentes tabelas baseadas em uma condição de igualdade entre colunas específicas. Existem vários tipos de JOINs disponíveis, cada um com suas próprias características e usos específicos. 

Neste artigo, vamos discutir os principais tipos de JOINs e como usá-los.

Quais são os JOINs disponíveis dentro do SQL?

Nas explicações do JOINs serão usadas duas tabelas de exemplo. A tabela Maio e a tabela Junho são mostradas abaixo. Elas são tabelas que informam a quantidade de vendas dos funcionários naquele respectivo mês

Maio

Matrícula Vendas
Mateus 78
Henrique 23
Pedro 10

Junho

Matrícula Vendas
Mateus 80
Henrique 50
Lucas 7

Perceba que a única diferença entre elas, além do número de vendas, é o funcionário Pedro que tá na tabela A, mas não está na tabela B. O motivo? Não sabemos. Uma possível demissão, quem sabe, mas isso não afeta em nada nossa consulta.

Agora com as tabelas definidas, vamos mostrar quais são os JOINs que podemos realizar no SQL!

INNER JOIN

Este é o tipo mais comum de JOIN e é usado para combinar linhas de duas tabelas onde há uma correspondência entre as colunas especificadas. A consulta resultante inclui somente as linhas que correspondem à condição de igualdade. Por exemplo:

Código INNER JOIN
SELECT * FROM 

Maio INNER JOIN Junho 

ON Maio.Matricula = Junho.Matricula

 Esse código irá retornar o seguinte resultado:

Matrícula Maio.Vendas Junho.Vendas
Mateus 78 80
Henrique 23 50

 

O INNER JOIN juntou as colunas em uma só, o que vem antes o nome da tabela que está antes e após o INNER JOIN na tabela serão as tabelas que irão ser unidas. 

Essa união segue sempre um critério e é basicamente isso que irá diferenciar os JOINs o INNER JOIN irá devolver no seu resultado apenas as interseções da condição de junção que você está usando.

Em nosso caso, a condição de junção é Maio.Matricula = Junho.Matricula, desse modo, o INNER JOIN só retornará com as interseções.

LEFT JOIN 

Este tipo de JOIN combina linhas da tabela à esquerda (especificada antes do JOIN) com as linhas da tabela à direita (especificada depois do JOIN) onde há uma correspondência entre as colunas especificadas. A consulta resultante inclui todas as linhas da tabela à esquerda, mesmo que não haja correspondência na tabela à direita. Por exemplo:

Código LEFT JOIN
SELECT * FROM 

Maio LEFT JOIN Junho 

ON Maio.Matricula = Junho.Matricula

 

Matrícula Maio.Vendas Junho.Vendas
Mateus 78 80
Henrique 23 50
Pedro 10 NULL

RIGHT JOIN

Este tipo de JOIN é similar ao JOIN LEFT, mas inclui todas as linhas da tabela à direita, mesmo que não haja correspondência na tabela à esquerda

Código RIGHT JOIN
SELECT * FROM 

Maio LEFT JOIN Junho 

ON Maio.Matricula = Junho.Matricula

 

Matrícula Maio.Vendas Junho.Vendas
Mateus 78 80
Henrique 23 50
Lucas NULL 7

.FULL JOIN

Este tipo de JOIN combina linhas de ambas as tabelas, independentemente de haver ou não correspondência entre as colunas especificadas. A consulta resultante inclui todas as linhas de ambas as tabelas

Código FULL JOIN
SELECT * FROM 

Maio LEFT JOIN Junho 

ON Maio.Matricula = Junho.Matricula

 

Matrícula Maio.Vendas Junho.Vendas
Mateus 78 80
Henrique 23 50
Pedro 10 NULL
Lucas NULL 13

Conclusão

Entender como funcionam os tipos de JOINs é essencial para quem planeja usar SQL no dia a dia. Com frequência é necessário fazer ligações entre as tabelas e é através dos JOINs que você fará isso, nesse artigo você aprendeu a como fazer isso. 

Aqui em nosso blog, existem diversos artigos sobre SQL que irão te fazer aprender sobre problemas de SQL. Uma boa maneira de evoluir é lendo nossos artigos 🙂 

Quer aprender exatamente tudo sobre SQL e virar um expert nessa linguagem tão usada no mercado de trabalho? Na Motim Academy existe um curso de SQL que te transformará em um verdadeiro expert do SQL capaz de impressionar qualquer um.

Compartilhe nas mídias:

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Categorias

Conheça a Motim Academy

Tenha acesso a cursos gratuitos e se destaque no mercado sem gastar nada

Os artigos
mais lidos: