Ed
semana passada
Vamos analisar cada situação e o comando SQL correto: I. Obter a quantidade total de pedidos realizados. - O correto é usar COUNT(*) ou COUNT(ID) para contar o número de linhas (pedidos). - SUM(ID) está incorreto, pois soma os valores da coluna ID, não conta os registros. II. Selecionar o nome do cliente e o valor total gasto por cada cliente em pedidos. - O correto é usar SUM(Valor) com GROUP BY Cliente para somar os valores por cliente. - TOTAL(Valor) não é uma função SQL padrão. III. Encontrar o cliente que fez o maior pedido (maior valor). - A forma correta é comparar Valor com o máximo valor da tabela, usando uma subconsulta: WHERE Valor = (SELECT MAX(Valor) FROM Pedidos) - Usar WHERE Valor = MAX(Valor) está incorreto, pois MAX não pode ser usado diretamente assim na cláusula WHERE. - SELECT TOP 1 é válido em alguns SGBDs (como SQL Server), mas não é padrão SQL. Agora, analisando as alternativas: A) Usa SUM(ID) e TOTAL(Valor) e WHERE Valor = MAX(Valor) — incorreto. B) Usa COUNT(*) (correto), SUM(Valor) (correto), mas WHERE Valor = MAX(Valor) (incorreto). C) Usa COUNT(ID) (correto), SUM(Valor) (correto), WHERE Valor = (SELECT MAX(Valor) FROM Pedidos) (correto). D) Usa SUM(ID) (incorreto), SUM(Valor) (correto), WHERE Valor = (SELECT TOP 1 Valor FROM Pedidos ORDER BY Valor DESC) (válido em SQL Server, mas SUM(ID) incorreto). E) Usa SUM(ID) e TOTAL(Valor) e WHERE Valor = MAX(Valor) — incorreto. Portanto, a alternativa correta que contém todos os comandos SQL corretos é a: C) 1. SELECT COUNT(ID) FROM Pedidos; II. SELECT Cliente, SUM(Valor) FROM Pedidos GROUP BY Cliente; III. SELECT Cliente FROM Pedidos WHERE Valor = (SELECT MAX(Valor) FROM Pedidos);
Cadastre-se ou realize login