FC ConcursosFC Concursos

Questão FC374531

Qual comando SQL retorna a soma total das quantidades vendidas para cada produto, considerando apenas os que tenham uma quantidade total vendida superior a 100 unidades?

Linguagem SQL

Instituto Consulplan · 2024

Considere duas tabelas:

 

Vendas (IDVenda, IDProduto, QuantidadeVendida)

 

Produtos (IDProduto, PrecoUnitario)

 

Qual comando SQL retorna a soma total das quantidades vendidas para cada produto, considerando apenas os que tenham uma quantidade total vendida superior a 100 unidades?

  1. SELECT IDProduto, COUNT(*) as TotalVendas FROM Vendas GROUP BY IDProduto HAVING TotalVendas > 100;
  2. SELECT IDProduto, QuantidadeVendida FROM Vendas LEFT JOIN Produtos ON Vendas.IDProduto = Produtos.IDProduto GROUP BY IDProduto AND QuantidadeVendida > 100;
  3. SELECT IDProduto, SUM(Vendas.QuantidadeVendida) as TotalVendas FROM Vendas INNER JOIN Produtos ON Vendas.IDProduto = Produtos.IDProduto WHERE SUM(Vendas.QuantidadeVendida) > 100;
  4. SELECT Produtos.IDProduto, SUM(Vendas.QuantidadeVendida) AS TotalQuantidadeVendida FROM Vendas JOIN Produtos ON Vendas.IDProduto = Produtos.IDProduto GROUP BY Produtos.IDProduto HAVING SUM(Vendas.QuantidadeVendida) > 100;
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

A consulta apresentada utiliza corretamente os elementos necessários para obter a soma das quantidades por produto e em seguida filtrar apenas os produtos com total superior a 100. O JOIN vincula as linhas de Vendas às de Produtos pela chave IDProduto, garantindo que a agregação considere vendas associadas a produtos válidos.

O SUM(Vendas.QuantidadeVendida) calcula a soma das quantidades por produto, enquanto o GROUP BY Produtos.IDProduto agrupa os registros por produto para permitir essa agregação. O resultado é renomeado com AS TotalQuantidadeVendida para clareza.

O filtro que restringe aos grupos com soma maior que 100 usa HAVING, apropriado porque atua sobre o resultado da agregação: \(SUM(Vendas.QuantidadeVendida) > 100\). Note que WHERE não funciona para esse tipo de condição, pois filtra antes da agregação.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo