← Voltar para os artigos

Os 4 JOINs do SQL, explicados sem diagrama de Venn

Por Fernando Nagao Douverny · 25 de junho de 2026 · 2 min de leitura

fundamentosiniciante

Todo mundo aprende JOIN com aqueles dois círculos que se cruzam. E todo mundo continua sem saber qual usar na hora do aperto.

O problema é que o diagrama mostra conjuntos, e o SQL trabalha com linhas. Trocando a pergunta, a coisa fica simples.

A única pergunta que importa

Você tem duas tabelas: pedidos e clientes. Nem todo pedido tem cliente cadastrado; nem todo cliente fez pedido.

A pergunta é: o que acontece com quem não tem par do outro lado?

Os quatro JOINs são as quatro respostas possíveis:

  • INNER JOIN — some. Só fica quem tem par dos dois lados.
  • LEFT JOIN — fica tudo da esquerda. Quem não tem par vem com NULL nas colunas da direita.
  • RIGHT JOIN — fica tudo da direita, mesma lógica invertida.
  • FULL JOIN — não some ninguém. Os dois lados ficam, com NULL onde faltar par.

É isso. Não tem quinto caso.

Na prática

SELECT c.nome, p.valor
FROM clientes c
LEFT JOIN pedidos p ON p.id_cliente = c.id

Esse LEFT JOIN responde “todos os clientes, com o que compraram — inclusive quem não comprou nada”. Troque para INNER e os clientes sem compra desaparecem da resposta.

Repara que a escolha do JOIN não é técnica, é de negócio. “Quantos clientes temos?” e “quantos clientes compraram?” são perguntas diferentes, e o JOIN é o que separa uma da outra.

O RIGHT JOIN quase não aparece — e tem motivo

RIGHT JOIN faz exatamente o que o LEFT faz, só que espelhado. Como você escolhe a ordem das tabelas no FROM, dá pra escrever qualquer RIGHT como um LEFT invertendo os lados.

Não está errado usar. Só é menos comum porque a maioria das pessoas lê a query de cima para baixo e pensa “esta é a tabela principal, aquilo ali é complemento” — que é o desenho natural do LEFT.

Pra lembrar

Antes de escrever o JOIN, responda em voz alta: quem eu não posso perder?

  • Não posso perder ninguém da esquerda → LEFT
  • Só quero quem tem os dois lados → INNER
  • Não posso perder ninguém, ponto → FULL

A resposta a essa frase é o JOIN. O diagrama de Venn era só um desenho.