← Questões de Banco de Dados

Banco de Dados · Fundação CETAP · 2025

Questão comentada de Banco de Dados

Qual comando modificador é usado em linguagem SQL em ORACLE para filtrar os resultados após o GROUP BY, com base em condições de agregação?

Gabarito: D

No SQL do Oracle, algumas palavras-chave trabalham em etapas diferentes da consulta. Primeiro você filtra linhas com WHERE, depois agrupa com GROUP BY e, se quiser aplicar um filtro sobre o resultado agregado, entra em cena o HAVING. É como separar a turma, fazer a média e só depois decidir quem passou no corte. O ponto central da questão é exatamente esse: o comando usado para filtrar resultados após o GROUP BY, com base em condições sobre funções de agregação, é o HAVING. Ele permite trabalhar com condições como COUNT, SUM, AVG, MAX e MIN, algo que o WHERE não faz nesse momento da consulta. Já o WHERE atua antes da agregação, filtrando registros individuais. Por isso, ele não serve para testar totalizações já calculadas. A lógica clássica do SQL é essa sequência: FROM, WHERE, GROUP BY, HAVING, ORDER BY. Então, o gabarito D está correto porque HAVING é a cláusula própria para restringir grupos já formados. Em doutrina e prática de SQL, essa é a distinção padrão cobrada em prova: WHERE filtra linhas; HAVING filtra grupos.

Continue treinando

Questões relacionadas