Imagine que você trabalha em um e-commerce e o gerente de estoque te faz a seguinte pergunta:

“Quais produtos estão cadastrados no sistema, mas nunca foram vendidos?”

Essa é uma dúvida comum — e extremamente útil para decisões de marketing, precificação e estoque. Neste artigo, você vai aprender como construir uma query SQL que responde exatamente isso, com base em um modelo de banco relacional simples e lógico.


1. Qual o Contexto do Problema?

Você tem, no mínimo, duas tabelas:

  • produto → onde estão todos os produtos cadastrados
  • pedido_detalhe → onde estão os itens que já foram vendidos, vinculados a pedidos

Seu objetivo é encontrar os produtos que não aparecem em nenhum pedido.


2. Como Resolver Esse Desafio com SQL?

Estratégia: LEFT JOIN + IS NULL

Vamos fazer um LEFT JOIN da tabela produto com a pedido_detalhe, e depois filtrar os casos onde não houve correspondência.


3. A Query na Prática

SELECT P.NOME_PRODUTO 
FROM produto P 
LEFT JOIN pedido_detalhe PD 
ON P.ID_PRODUTO = PD.ID_PRODUTO 
WHERE PD.ID_PRODUTO IS NULL;

4. O Que Essa Query Faz?

  • O LEFT JOIN traz todos os produtos, incluindo os que não têm correspondência em pedido_detalhe
  • A cláusula WHERE PD.ID_PRODUTO IS NULLfiltra apenas os produtos que nunca foram vendidos

Resultado: a lista de produtos que estão no sistema, mas não constam em nenhuma venda.


5. Variações e Melhorias Possíveis

➕ Incluir mais colunas

SELECT P.ID_PRODUTO, P.NOME_PRODUTO, P.CATEGORIA
FROM produto P
LEFT JOIN pedido_detalhe PD ON P.ID_PRODUTO = PD.ID_PRODUTO
WHERE PD.ID_PRODUTO IS NULL;

➕ Contar quantos produtos estão nessa situação

SELECT COUNT(*) AS PRODUTOS_NUNCA_VENDIDOS
FROM produto P
LEFT JOIN pedido_detalhe PD ON P.ID_PRODUTO = PD.ID_PRODUTO
WHERE PD.ID_PRODUTO IS NULL;

6. Casos Reais de Uso Dessa Consulta

  • Produtos esquecidos ou com erro de cadastro
  • Produtos sem estoque vinculado
  • Falhas de visibilidade ou promoção
  • Otimização de catálogo

💡 Empresas usam esse tipo de consulta para decidir o que descontinuar, ofertar ou impulsionar.


Conclusão

Saber montar uma query para descobrir produtos nunca vendidos é um ótimo exemplo de como SQL serve para resolver problemas reais e estratégicos.

  • Use LEFT JOIN para identificar ausências
  • Filtre com IS NULL para encontrar “invisíveis” no sistema
  • Aplique o raciocínio para outras áreas: campanhas sem retorno, clientes sem pedidos, etc.

📢 Já usou esse tipo de consulta no seu trabalho ou estudo? Pensou em outras situações parecidas? Compartilha aqui nos comentários! 📚 E se quiser aprender SQL de forma aplicada, com foco em raciocínio e desafios reais, conheça o curso SQL Simplificado — feito para te preparar para o que o mercado realmente pede.

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.