CALCULAR QUAL CLIENTE GASTOU MAIS
Preciso de um codigo que faça a seguinte rotina..
Eu tenho uma lista de clientes
Abel Silva
Bruno Santos
Carlos Fraga
.
.
.
e assim por diante..
Como faço para saber qual gastou mais durante um perÃodo.. sendo que uns fizeram varias compras durante o mês?
Não posso fazer tipo.. ir atulizando o valor que o cliente gastou na loja, pois se eu quiser saber quem gastou mais durante a semana.. ou durante uma data..
Alguem tem uma idéia? Como faço isso?
Eu tenho uma lista de clientes
Abel Silva
Bruno Santos
Carlos Fraga
.
.
.
e assim por diante..
Como faço para saber qual gastou mais durante um perÃodo.. sendo que uns fizeram varias compras durante o mês?
Não posso fazer tipo.. ir atulizando o valor que o cliente gastou na loja, pois se eu quiser saber quem gastou mais durante a semana.. ou durante uma data..
Alguem tem uma idéia? Como faço isso?
Vendo a estrutura do seu banco é possÃvel montar a consulta para que retorne este tipo de informação. Dependendo do seu banco (SQL Server,Oracle, FIrebird ou Access), é possÃvel criar uma view que deixe a consulta já pré-formatada e você passaria o perÃodo e o banco voltaria a informação solicitada.
comando em SQL:
select cliente,sum(valor) as TOTAL_GASTO from TABELA group by CLIENTE
select cliente,sum(valor) as TOTAL_GASTO from TABELA group by CLIENTE
As sugestões acima não consideram o perÃodo...
Tente isso:
Select Cliente,Sum(Valor) as Total From Tabela Where Data >= [ô]2011/09/01[ô] And Data <= [ô]2011/09/30[ô] Group By Cliente Order By Total Desc
Tente isso:
Select Cliente,Sum(Valor) as Total From Tabela Where Data >= [ô]2011/09/01[ô] And Data <= [ô]2011/09/30[ô] Group By Cliente Order By Total Desc
se for considerar periodo entre x e y utilize..
Select Cliente,Sum(Valor) as Total From Tabela Where Data between [ô][Ô] & trim(txtini) & [Ô][ô] And [ô][Ô] & trim(txtfim) & [Ô][ô] Group By Cliente Order By Total Desc [Ô]
Sr. XXXANGELSXXX
A solução que eu postei dá exatamente o mesmo resultado que você postou...
A solução que eu postei dá exatamente o mesmo resultado que você postou...
Tópico encerrado , respostas não são mais permitidas