1
resposta

CONSULTA

Eu fiz uma consulta mas não sei se está certo, eu quis fazer uma consulta que mostre o total que os clientes já gastaram an empresa :

SELECT tc.nome , round(count((quantidade*preco)),2) as total_gasto from tabela_de_clientes tc inner join notas_fiscais nf on tc.cpf = nf.cpf
 inner join itens_notas_fiscais inf on nf.numero = inf.numero group by nome order by total_gasto ASC;
1 resposta

Oi, Victor! Tudo bem?

Peço desculpas pela demora em retornar.

Você está no caminho certo para o desenvolvimento da consulta! O único ponto de atenção é no seguinte trecho do script SQL:

round(count((quantidade*preco)),2)

A função COUNT tem como objetivo contar a quantidade de itens a partir de determinado critério especificado na consulta. Para saber o valor dos gastos de cada cliente, precisamos utilizar a função SUM, que irá somar o dinheiro da empresa conforme a pessoa.

Com essa mudança, chegamos na seguinte consulta:

SELECT tc.nome, round(sum((quantidade*preco)),2) as total_gasto 
from tabela_de_clientes tc inner join notas_fiscais nf on tc.cpf = nf.cpf
inner join itens_notas_fiscais inf on nf.numero = inf.numero 
group by nome order by total_gasto ASC;

Observe que a única mudança feita foi a substituição da palavra count por sum na especificação das colunas do nosso SELECT.

Caso tenha curiosidade em saber o resultado da busca, aqui estão alguns dos clientes e seus respectivos gastos:

nometotal_gasto
Carlos Eduardo9442579.3
Marcelo Mattos9651372.43
Eduardo Jorge9707429.05
César Teixeira9715518.34

Victor, continue estudando e se dedicando que você vai longe! Se surgir alguma dúvida, fico à disposição para ajudar.

Um forte abraço!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software