1
resposta

Desafio - Resolução

select c.nome, count(p.id) as quantidade_pedidos, SUM(ip.precounitario) as valor_total
from pedidos p
join clientes c on p.idcliente = c.id
join itenspedidos ip on p.id = ip.idpedido
group by c.nome
order by c.nome
1 resposta

Olá, Vinicius! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de JOIN para relacionar tabelas, utilizou muito bem funções de agregação como COUNT e SUM para gerar métricas relevantes e ainda compreendeu a importância de GROUP BY e ORDER BY para organizar os resultados de forma clara.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é incluir o GROUP BY também pelo c.id, garantindo maior consistência caso existam clientes com nomes iguais. Assim:

SELECT c.id, c.nome, 
       COUNT(p.id) AS quantidade_pedidos, 
       SUM(ip.precounitario) AS valor_total
FROM pedidos p
JOIN clientes c ON p.idcliente = c.id
JOIN itenspedidos ip ON p.id = ip.idpedido
GROUP BY c.id, c.nome
ORDER BY c.nome;

Isso faz com que o relatório seja mais robusto e evite duplicidades nos resultados.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!