Considere a seguinte tabela de um banco de dados relacional.Estoque (ID, Tipo, Item, Qtdade)O comando SQL para obter o Tipo e a Quantidade do estoque, agrupado por Tipo, contido na tabela é:
ASELECT Tipo, COUNT (Qtdade)FROM Estoque;
BSELECT Tipo, SUM (Qtdade)FROM Estoque;
CSELECT Tipo, QtdadeFROM EstoqueGROUP BY COUNT(Tipo);
DSELECT Tipo, QtdadeFROM EstoqueGROUP BY SUM(Tipo);
ESELECT Tipo, SUM (Qtdade)FROM EstoqueGROUP BY (Tipo);
Revelar gabarito e comentário▾
GabaritoE — SELECT Tipo, SUM (Qtdade)
FROM Estoque
GROUP BY (Tipo);
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
SQL: GROUP BY e funções de agregação
Gabarito: letra E. Para obter o Tipo e a soma das quantidades agrupadas por Tipo, o comando correto é SELECT Tipo, SUM(Qtdade) FROM Estoque GROUP BY Tipo;. A alternativa E é a única que apresenta a sintaxe válida: a cláusula GROUP BY especifica a coluna de agrupamento (Tipo) e a função de agregação SUM é aplicada sobre Qtdade. As demais alternativas ou omitem o GROUP BY ou o utilizam de forma incorreta.
A banca testa o conhecimento da sintaxe do SQL para consultas com agregação. A função SUM soma valores numéricos de um grupo, e o GROUP BY define como as linhas são agrupadas.
Alternativa A — ❌ Incorreta
SELECT Tipo, COUNT (Qtdade) FROM Estoque; — falta a cláusula GROUP BY. Sem ela, a consulta tenta retornar uma linha única com a primeira ocorrência de Tipo e a contagem total de Qtdade, o que não atende ao pedido de agrupamento por Tipo.
Alternativa B — ❌ Incorreta
SELECT Tipo, SUM (Qtdade) FROM Estoque; — mesmo erro: sem GROUP BY, a soma é calculada sobre toda a tabela, não por Tipo.
Alternativa C — ❌ Incorreta
SELECT Tipo, Qtdade FROM Estoque GROUP BY COUNT(Tipo); — a cláusula GROUP BY não pode receber uma função de agregação (COUNT). O agrupamento deve ser por colunas (ou expressões não agregadas).
Alternativa D — ❌ Incorreta
SELECT Tipo, Qtdade FROM Estoque GROUP BY SUM(Tipo); — o mesmo erro: GROUP BY com uma função de agregação (SUM). Além disso, SUM(Tipo) não faz sentido, pois Tipo é geralmente texto.
Alternativa E — ✅ Correta ⟵ GABARITO
SELECT Tipo, SUM (Qtdade) FROM Estoque GROUP BY (Tipo); — sintaxe correta: agrupa as linhas por Tipo e, para cada grupo, calcula a soma de Qtdade. Os parênteses em (Tipo) são opcionais e não alteram a semântica.
PEGA ESSA DICA!
Em consultas com agregação, toda coluna que aparece no SELECT e não é função de agregação deve estar no GROUP BY. Funções de agregação comuns: COUNT, SUM, AVG, MAX, MIN. O GROUP BY nunca recebe uma função de agregação como argumento.