Diogo Teixeira Rossato escreveu:
> Procurei na documentacao do SUM, mas nao achei o que eu quero,
> existe alguma funcao que retorne a soma acumulada no select?
> tipo:
>
> valor
> 100
> 200
> 150
> 120
>
>
> SELECT valor,SOMA(valor) AS soma
> valor | soma
> 100 |100
> 200 |300
> 150 |450
> 120 |570
>
Talvez dê para adaptar (atenção para a ordenação da chave):
bdteste=# SELECT t1.id, t1.numero,
bdteste-# (SELECT SUM(t2.numero) FROM tstnum t2
bdteste(# WHERE t2.id <= t1.id) AS Acumulado
bdteste-# FROM tstnum t1;
id | numero | acumulado
----+-------------+-------------
1 | 12345678901 | 12345678901
2 | 123456789 | 12469135690
3 | 1234567 | 12470370257
4 | 123456 | 12470493713
5 | 12345 | 12470506058
6 | 1234 | 12470507292
7 | 123 | 12470507415
8 | 12 | 12470507427
9 | 1 | 12470507428
(9 registros)
[]s
Osvaldo
_______________________________________________________
Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular.
Registre seu aparelho agora!
http://br.mobile.yahoo.com/mailalertas/
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/
Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios