SELECT COMPRADORES.NOME, SUM(VALOR)
FROM COMPRAS INNER JOIN COMPRADORES ON COMPRAS.COMPRADOR_ID = COMPRADORES.ID
GROUP BY COMPRADORES.NOME
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
SELECT COMPRADORES.NOME, SUM(VALOR)
FROM COMPRAS INNER JOIN COMPRADORES ON COMPRAS.COMPRADOR_ID = COMPRADORES.ID
GROUP BY COMPRADORES.NOME
Bom dia,
Quando usamos o SQL e fazemos um SQL da forma abaixo:
Select * from Compradores
Nos queremos retornar todos os campos que tem na tabela Compradores, porém se eu quiser retornar apenas o nome do Comprador
Usaria Select Nome from compradores.
Agora no seu caso o seu select está usando dados de duas tabelas, e provavelmente o campo Nome existe nas duas, desta forma como o SQL saberia qual Nome ele deveria retornar?
Por este motivo é necessário que você coloque o Nome da Tabela e o Nome do Campo. Ficando como acima Select Compradores.Nome...
O Group By é utilizado para agrupo os dados, neste caso você precisa saber o valor total comprado pelo comprador.
Vamos supor que você tem os seguintes dados.
Compra Comprador Valor 1 João 100,00 2 Pedro 200,00 3 João 50,00 4 Pedro 30,00
Desta forma para trazer agrupado por Comprador Usamos o Group By Comprador.Nome
Porém para que some todas as compras usamos o SUM(Valor) assim o resultado será
João 150,00 Pedro 230,00
Expliquei sem colocar conceitos para facilitar o entendimento.
Um grande abraço.
Boa tarde,
Como está este caso funcionou?
Atenciosamente.