Questão FC372852
Seja a tabela Vendas de um banco de dados relacional: Vendas (ID, Nome-Item, Valor, Descrição, Fabricante) O comando SQL-ANSI para obter o nome do fabricante e o valor médio dos it
Linguagem SQL
FCC · 2018
Seja a tabela Vendas de um banco de dados relacional:
Vendas (ID, Nome-Item, Valor, Descrição, Fabricante)
O comando SQL-ANSI para obter o nome do fabricante e o valor médio dos itens de cada fabricante, apenas no caso de valores médios superiores a R$ 100,00 é:
- SELECT Fabricante, MED (Valor)
FROM Vendas
WHERE MED (Valor) > 100.00
- SELECT Fabricante, AVG (Valor)
FROM Vendas GROUP BY Valor
WHERE AVG (Valor) > 100.00
- SELECT Fabricante, MED (Valor)
FROM Vendas
GROUPING Fabricante WITH AVG (Valor) > 100.00
- SELECT Fabricante, AVG (Valor)
FROM Vendas
GROUP BY Fabricante
HAVING AVG (Valor) > 100.00
- SELECT Fabricante, AVG (Valor)
FROM Vendas
JOIN Fabricante AND AVG (Valor) > 100.00
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
Consulta correta: SELECT Fabricante, AVG(Valor) FROM Vendas GROUP BY Fabricante HAVING \(AVG(Valor) > 100.00\).
O trecho SELECT Fabricante, AVG(Valor) pede duas colunas: a chave de agrupamento (Fabricante) e a média dos valores por fabricante. A função AVG calcula a média aritmética dos valores de cada grupo.
A cláusula GROUP BY Fabricante agrupa as linhas por fabricante, produzindo um registro por fabricante sobre o qual a função de agregação opera.
A cláusula HAVING filtra os grupos resultantes aplicando uma condição sobre uma agregação: aqui mantém apenas os fabricantes cuja média satisfaça \(AVG(Valor) > 100.00\). Em resumo: seleciona fabricante + média por fabricante e descarta grupos com média ≤ R$100,00.
Conteúdo do catálogo FC Concursos · Atualizado em