Muitas vezes, dois conjuntos de dados parecem semelhantes: nomes parecidos, colunas parecidas… Mas basta um JOIN errado para gerar duplicidade, dados quebrados ou resultados enganosos.

Neste artigo, você vai encarar um desafio onde duas tabelas têm campos parecidos e a missão é descobrir qual é o JOIN correto para retornar o resultado esperado.


1. As Tabelas Envolvidas

🗂️ Tabela: produto

ID_PRODUTONOME_PRODUTOCATEGORIA
1TecladoPeriférico
2MonitorPeriférico
3MousePeriférico
4NotebookComputador

🗂️ Tabela: produto_estoque

ID_ESTOQUEID_PRODUTOQUANTIDADE
101120
102215
103410

2. O Objetivo da Consulta

Exibir o nome dos produtos junto com a quantidade em estoque, incluindo os produtos que ainda não têm registro de estoque.


3. O Erro Comum: Usar JOIN Direto e Perder Informações

SELECT P.NOME_PRODUTO, E.QUANTIDADE
FROM produto P
JOIN produto_estoque E ON P.ID_PRODUTO = E.ID_PRODUTO;

Resultado: o produto Mouse (ID 3) não aparece, porque não tem linha correspondente na tabela de estoque.


✅ O JOIN Correto: LEFT JOIN

SELECT P.NOME_PRODUTO, COALESCE(E.QUANTIDADE, 0) AS QUANTIDADE
FROM produto P
LEFT JOIN produto_estoque E ON P.ID_PRODUTO = E.ID_PRODUTO;

4. Explicando o Que Está Acontecendo

  • O LEFT JOIN garante que todos os produtos apareçam, mesmo sem estoque
  • O COALESCE(..., 0) substitui os NULL da coluna QUANTIDADE por zero
  • O resultado final é completo, confiável e interpretável

5. Resultado Esperado

NOME_PRODUTOQUANTIDADE
Teclado20
Monitor15
Mouse0
Notebook10

Conclusão

Quando você trabalha com tabelas relacionadas, não basta ter nomes parecidos — você precisa entender o relacionamento.

  • Use LEFT JOIN para garantir abrangência
  • Aplique COALESCE para evitar NULL em relatórios
  • Sempre pense: quero mostrar tudo ou só o que tem relação direta?

📢 Já cometeu erro por usar o JOIN errado? Ou descobriu o valor de um LEFT JOIN em uma situação como essa? Comenta aqui! 📚 E se quiser dominar SQL com raciocínio, estrutura e clareza, conheça o curso SQL Simplificado — onde cada JOIN tem propósito e prática real.

Nos vemos no próximo artigo do Blog do SQL! 🚀

Tags: | |

0 Comentários

Deixe um comentário

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

Solicitar exportação de dados

Use este formulário para solicitar uma cópia de seus dados neste site.

Solicitar a remoção de dados

Use este formulário para solicitar a remoção de seus dados neste site.

Solicitar retificação de dados

Use este formulário para solicitar a retificação de seus dados neste site. Aqui você pode corrigir ou atualizar seus dados, por exemplo.

Solicitar cancelamento de inscrição

Use este formulário para solicitar a cancelamento da inscrição do seu e-mail em nossas listas de e-mail.