Imagem de fundo

Banco de dados relacionais utilizam a linguagem SQL para manipulação de dados, permitin...

Banco de dados relacionais utilizam a linguagem SQL para manipulação de dados, permitindo a realização de consultas complexas com o uso de subqueries e funções agregadas. Suponha que, em um banco de dados de uma empresa, a tabela Vendas tenha a estrutura a seguir:


CREATE TABLE Vendas (

id_venda INT PRIMARY KEY,

id_cliente INT,

valor DECIMAL(10,2),

data_venda DATE

);


A empresa deseja encontrar os clientes que realizaram pelo menos uma venda acima da média de todas as vendas registradas. Qual das seguintes consultas retorna corretamente esse resultado?


A

SELECT DISTINCT id_cliente

FROM Vendas

WHERE valor > AVG(valor);


B

SELECT id_cliente

FROM Vendas

WHERE valor >= ALL (SELECT valor FROM Vendas);


C

SELECT id_cliente

FROM Vendas

GROUP BY id_cliente

HAVING AVG(valor) > (SELECT AVG(valor) FROM

Vendas);


D

SELECT DISTINCT id_cliente

FROM Vendas

WHERE valor > (SELECT AVG(valor) FROM Vendas);


E

SELECT id_cliente

FROM Vendas

WHERE valor = (SELECT MAX(valor) FROM Vendas);