Problema com soma de campo

Delphi

23/11/2010

Olá a todos!   Tenho uma aplicação que necessita somar valores de processos, que podem ser cadastrados mais de uma vez, mas que na hora da soma só deve ser considerado um valor por número.   Estou tentando usar o seguinte código:   SELECT DISTINCT(NPROCESSOPAGAMENTO),SUM(DISTINCT(VALORPROCESSOPAGAMENTO))  FROM PROCESSOPAGAMENTO
GROUP BY NPROCESSOPAGAMENTO,VALORPROCESSOPAGAMENTO   O resultado é mostrado assim:   NPROCESSOPAGAMENTO   SUM 0001                                  1000 0002                                  2000     Gostaria de saber o que acrescentar no código para que já saia o resultado da soma dos valores SUM, e já mostre o resultado 3000.     FDAMDS.
Francisco Santos

Francisco Santos

Curtidas 0

Respostas

Wilson Junior

Wilson Junior

23/11/2010

Você quer que apareça somente a soma dos valores ou a soma dos valores e o numero? Seja um pouco mais claro.
Aguardo retorno.
GOSTEI 0
Pietro Braga

Pietro Braga

23/11/2010


Olá a todos!
 
Tenho uma aplicação que necessita somar valores de processos, que podem ser cadastrados mais de uma vez, mas que na hora da soma só deve ser considerado um valor por número.
 
Estou tentando usar o seguinte código:
 
SELECT DISTINCT(NPROCESSOPAGAMENTO),SUM(DISTINCT(VALORPROCESSOPAGAMENTO))  FROM PROCESSOPAGAMENTO
GROUP BY NPROCESSOPAGAMENTO,VALORPROCESSOPAGAMENTO
 
O resultado é mostrado assim:
 
NPROCESSOPAGAMENTO   SUM
0001                                  1000
0002                                  2000
 
 
Gostaria de saber o que acrescentar no código para que já saia o resultado da soma dos valores SUM, e já mostre o resultado 3000.
 
 
FDAMDS.
 

Acho que é isso:
SELECT NPROCESSOPAGAMENTO, SUM(VALORPROCESSOPAGAMENTO) FROM PROCESSOPAGAMENTO GROUP BY NPROCESSOPAGAMENTO ORDER BY NPROCESSOPAGAMENTO
Escreva vc mesmo o código, posso ter errado alguma letra.
Abs
GOSTEI 0
Pietro Braga

Pietro Braga

23/11/2010


Gostaria de saber o que acrescentar no código para que já saia o resultado da soma dos valores SUM, e já mostre o resultado 3000.

Devo ter entendido mal, para isso não bastaria umSELECT SUM(VALORPROCESSOPAGAMENTO) ...
GOSTEI 0
Francisco Santos

Francisco Santos

23/11/2010

olá Wilson Lehapan Junior, vulgo Paulista...!!!  Gostaria que só mostrasse a soma total.     FDAMDS.
GOSTEI 0
Francisco Santos

Francisco Santos

23/11/2010

Olá Pietro Enrico Braga. Não pode ser porque existem valores que se repetem mas que pertencem ao mesmo processo. Preciso de um select que soma valores por processo, sem levar em consideração os repetidos. FDAMDS.
GOSTEI 0
Francisco Santos

Francisco Santos

23/11/2010

O que na realidade preciso é a soma total das somas, com distinct para o numero do processo com seu valores.
GOSTEI 0
Wilson Junior

Wilson Junior

23/11/2010

Teste assim e veja se é isto que você quer.
SELECT 
  NPROCESSOPAGAMENTO,
  ( SUM(VALORPROCESSOPAGAMENTO) / COUNT(NPROCESSOPAGAMENTO) ) AS Valor
FROM
  PROCESSOPAGAMENTO
GROUP BY
  NPROCESSOPAGAMENTO


Espero ter colaborado.
GOSTEI 0
Francisco Santos

Francisco Santos

23/11/2010

Ok Wilson Lehapan Junior, vulgo Paulista...!!! Agora existe a possibilidade de se fazer automaticamento a soma dos valores mostrados.   Com a sua sugestão teremos:   NPROCESSOPAGAMENTO     VALOR 0001                                   1000 0002                                   2000     Poderia ser mostrado o resultado 3000?     FDAMDS.
GOSTEI 0
Pietro Braga

Pietro Braga

23/11/2010

SELECT DISTINCT(NPROCESSOPAGAMENTO),SUM(DISTINCT(VALORPROCESSOPAGAMENTO)), SUM(VALORPROCESSOPAGAMENTO AS TOTAL  FROM PROCESSOPAGAMENTO
GROUP BY NPROCESSOPAGAMENTO,VALORPROCESSOPAGAMENTO
 
GOSTEI 0
Francisco Santos

Francisco Santos

23/11/2010

JÁ ENCONTREI A SOLUÇÃO. OBRIGADO A TODOS. FDAMDS
GOSTEI 0
Wilson Junior

Wilson Junior

23/11/2010

Post a solução, para caso alguns colega precisar.
Obrigado.
GOSTEI 0
POSTAR