← Questões de Banco de Dados

Banco de Dados · FGV · 2025

Questão comentada de Banco de Dados

Em um banco de dados SQL, suponha que existe uma tabela chamada Vendas com as colunas VendaID, VendedorID e ValorVenda. Para listar, sem duplicatas, os VendedorID de todos os vendedores que tenham realizado vendas superiores ao valor de 10.000, poderíamos usar a seguinte consulta:

Gabarito: D

A lógica aqui é simples: o enunciado quer listar os vendedores que fizeram alguma venda acima de 10.000, e sem repetir nomes. Em SQL, quando você quer filtrar linha a linha, usa-se WHERE. Então basta trazer o VendedorID das linhas em que ValorVenda seja maior que 10000. O detalhe importante é o sem duplicatas: como um vendedor pode aparecer em mais de uma linha, entra o DISTINCT para eliminar repetições. Pense assim: WHERE faz a peneira antes de mostrar os dados, e DISTINCT faz a limpeza das repetições depois. Não tem mistério de somar, agrupar ou inventar moda aqui. A consulta correta é justamente a que seleciona VendedorID com filtro em ValorVenda > 10000 e ainda remove duplicidades. Por isso o gabarito é a alternativa D: SELECT DISTINCT VendedorID FROM Vendas WHERE ValorVenda > 10000. Ela atende exatamente aos dois requisitos do enunciado: filtra as vendas acima de 10.000 e lista os vendedores sem repetição. Um cuidado clássico em SQL é não confundir filtro de linha com agregação. Funções como SUM, MAX e cláusulas como HAVING entram quando você quer analisar grupos, e não quando a pergunta pede apenas cada registro individualmente.

Continue treinando

Questões relacionadas