Entenda de vez o LEFT e RIGHT JOIN no SQL

Se você está aprendendo SQL, provavelmente já se confundiu entre LEFT e RIGHT JOIN.
Mas calma, dá pra entender de forma bem simples! Vou explicar com analogias fáceis e exemplos práticos para você nunca mais errar.


Analogia do restaurante

Imagine que temos duas listas:

  • 🧾 Clientes → lista com todos que já foram ao restaurante.
  • 🍕 Pedidos → lista com os pedidos feitos.

LEFT JOIN — todos os clientes (mesmo quem não pediu nada)

Pense assim:

“Eu quero ver todos os clientes, e se eles tiverem pedidos, mostre também.”

Resultado:

  • Se o cliente fez pedido, aparece junto.
  • Se não fez pedido, aparece com os campos do pedido em branco (NULL).

💬 É como dizer: “Quero a lista completa de clientes, e se tiver pedido, traga junto.”


RIGHT JOIN — todos os pedidos (mesmo sem cliente)

Agora inverta o raciocínio:

“Eu quero ver todos os pedidos, e se tiver um cliente, mostre também.”

Resultado:

  • Se o pedido tem cliente, aparece o nome.
  • Se não tiver cliente cadastrado, o nome aparece vazio (NULL).

💬 É como dizer: “Quero ver todos os pedidos que existem, mesmo que o cliente não esteja na lista.”


💡 Dica prática pra lembrar fácil

“O lado que eu coloco o JOIN é o lado que não quero perder dados.”

Exemplo:

SELECT *
FROM clientes c
LEFT JOIN pedidos p ON c.id = p.id_cliente;

🟡 → Mostra todos os clientes (mesmo sem pedidos).

Mas se eu inverter:

SELECT *
FROM clientes c
RIGHT JOIN pedidos p ON c.id = p.id_cliente;

🟡 → Mostra todos os pedidos (mesmo sem cliente).


🔗 Dica: Esse post complementa o artigo principal “Como dominar o JOIN no SQL

Compartilhe:
Elvis Amorim

Elvis Amorim

Apaixonado por tecnologia e por compartilhar conhecimento. Tenho mais de 15 anos de experiência nas áreas de varejo, administração e informática, atuando como analista de sistemas e de dados. No TecProdutiva, reúno tudo o que aprendi para ajudar pessoas a usarem a tecnologia de forma simples e produtiva.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *