Bê-á-bá do SQL: Usando JOIN para combinar tabelas

Bê-á-bá do SQL: Usando JOIN para combinar tabelas

Inscreva-se

Abordamos dados e análises dentro das empresas.

Receba novos artigos por e-mail


Compartilhe

Material de apoio:
1. Antes de iniciar esse tutorial, acesse a introdução da série de tutoriais clicando aqui, siga o passo a passo para usar a nossa plataforma interativa de SQL e pratique em tempo real
2. Participe do nosso canal do slack, onde você poderá tirar dúvidas sobre os tutoriais e também acessar conteúdo exclusivo do universo de dados, clicando aqui

Confira também os posts anteriores da série:
1. Introdução
2. Estrutura do SELECT
3. Filtrando valores com o WHERE
4. Agrupando valores com o GROUP BY
5. Usando ORDER BY e LIMIT

A função do JOIN no SQL é combinar duas tabelas através de alguma chave ou valor comum entre elas. Existem diversos tipos de JOINs no SQL, no tutorial de hoje iremos falar sobre o INNER JOIN e o LEFT JOIN, que são os tipos mais usados.

Para os exemplos abaixo vamos considerar as tabelas “pessoas” e “dados_adicionais” do nosso banco de testes:

O atributo alt desta imagem está vazio. O nome do arquivo é image-1.png

Para combinar as duas tabelas em um JOIN é importante garantir que ambas tenham uma coluna em comum. No caso do nosso exemplo, a coluna “id” é a chave que será usada para cruzá-las.

Diferença entre INNER JOIN e LEFT JOIN

Enquanto o INNER JOIN combina todos os valores das duas tabelas e retorna no resultado somente as linhas presentes em ambas, o LEFT JOIN traz todas as linhas presentes na tabela 1 (ou tabela da esquerda) com os valores correspondentes da tabela 2.

Sintaxe básica do JOIN

INNER JOIN

SELECT p.id, p.nome, p.idade, d.estado_civil
FROM pessoas p
INNER JOIN dados_adicionais d ON p.id = d.id

No código acima estamos trazendo as colunas id, nome e idade da tabela “pessoas” e a coluna estado_civil da tabela “dados_adicionais”. A coluna id é a chave que estamos usando para cruzar as duas tabelas, neste caso, o resultado trará apenas ids que existam em ambas as tabelas. Os alias “p” e “d” são importantes para identificar de qual tabela está vindo a determinada coluna.

LEFT JOIN

SELECT p.id, nome, idade, estado_civil
FROM pessoas p
LEFT JOIN dados_adicionais d ON p.id = d.id

No caso do exemplo acima, a sintaxe é bastante parecida com a do INNER JOIN, porém, no resultado virão todas as linhas da tabela “pessoas” com os valores correspondentes encontrados na tabela “dados adicionais”. Quando não houver correspondência na segunda tabela, a coluna estado_civil ficará em branco na determinada linha.

Não deixe de conferir os post anteriores da nossa série de tutoriais, e fique de olho no nosso blog para acompanhar os próximos!

E para testar a plataforma Kondado gratuitamente por 14 dias, basta clicar no link abaixo:

Publicado em 2020-11-30