1
resposta

Aula 4 - Atividade 3 Mão na massa: total de pedidos

Enunciado do desafio:

Utilizando as tabelas de clientes, pedidos e itensPedidos do Serenatto, crie uma consulta que busque o total dos pedidos feitos por cada cliente. A tabela "Clientes" contém informações sobre os clientes, enquanto a tabela "Pedidos" registra informações sobre os pedidos feitos por esses clientes. Em ItensPedidos, você encontra as informações de quantidade vendida de cada produto e o preço unitário.

Seu desafio é criar uma consulta SQL que retorne o nome de cada cliente e o valor total dos pedidos que cada um deles comprou.

-- Selecionando todas as tabelas

SELECT *
FROM clientes c
INNER JOIN Pedidos p 
ON c.id = p.idcliente
INNER JOIN itenspedidos ip
On P.id = ip.idpedido;

-- Buscando os campos necessários

SELECT c.nome, ip.precounitario
FROM clientes c
INNER JOIN Pedidos p 
ON c.ID = p.idcliente
INNER JOIN itensPedidos ip
On P.id = ip.idpedido;

-- Retornando o nome de cada cliente e o valor total dos pedidos

SELECT c.nome AS Nome_Cliente, SUM(ip.precounitario) AS Total_dos_Pedidos
FROM clientes c
INNER JOIN Pedidos p 
ON c.ID = p.idcliente
INNER JOIN itensPedidos ip
On P.id = ip.idpedido
GROUP BY c.Nome;
1 resposta

Oi, Orlando! Tudo bem com você?

Obrigado por compartilhar seu código com a comunidade Alura.Gostei de como você utilizou o INNER JOIN para relacionar as tabelas. Para contribuir com seu aprendizado, deixo abaixo uma tabela das funções de agregação mais utilizadas em SQL:

FunçãoDescriçãoExemplo de uso
SUM()Soma todos os valores de uma coluna.SELECT SUM(preco) FROM produtos;
AVG()Calcula a média dos valores de uma coluna.SELECT AVG(preco) FROM produtos;
COUNT()Conta o número de linhas ou valores não nulos.SELECT COUNT(*) FROM clientes;
MAX()Retorna o maior valor de uma coluna.SELECT MAX(preco) FROM produtos;
MIN()Retorna o menor valor de uma coluna.SELECT MIN(preco) FROM produtos;

Conte com o apoio do Fórum na sua jornada.

Abraços e bons estudos!