Cara, fechou!
 
Muito obrigado.
Luís
 

--- On Tue, 9/30/08, Claro, Eduardo <[EMAIL PROTECTED]> wrote:

From: Claro, Eduardo <[EMAIL PROTECTED]>
Subject: RE: [oracle_br] Select Acumulativo
To: oracle_br@yahoogrupos.com.br
Date: Tuesday, September 30, 2008, 3:03 PM






Utilize uma função analítica. Veja o exemplo, em que eu usei a função LAG (pega 
o dado da linha anterior):

drop table vendas;
create table vendas (data date, valor number);
begin
for i in 1..50 loop
insert into vendas values (trunc(sysdate- (i*30/10) ),trunc(dbms_ random.value( 
1,100)));
end loop;
end;
/
commit;

alter session set nls_date_format= 'MON';
select trunc(data,' MON') mes, sum(valor) soma_normal, sum(valor) + nvl( 
lag(sum(valor) ) over(order by trunc(data,' MON')) , 0) ACUMULADO
from vendas
group by trunc(data,' MON')
order by trunc(data,' MON');

MES SOMA_NORMAL ACUMULADO
--- ----------- ---------
MAI 527 527
JUN 430 957
JUL 491 921
AGO 516 1007
SET 518 1034

[]s

Eduardo Claro

-----Original Message-----
From: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] On 
Behalf Of Luis Eduardo Trovo
Sent: terça-feira, 30 de setembro de 2008 15:24
To: [EMAIL PROTECTED] os.com.br
Subject: [oracle_br] Select Acumulativo

Pessoal, boa tarde!

Existe alguma função ou alguma lógica para fazer um campo acumulativo em um 
Select? Por exemplo:

Select Mes, Sum(Valor) Soma
from Vendas
Group by Mes
Order by Mes;

Mes Soma 
Jan 10
Fev 12
Mar 10
Abr 15

Existe como criar uma coluna que acumula os valores do campo Soma neste Select?
O resultado esperado deveria ficar da seguinte forma:

Mes Soma Acumulado
Jan 10 10
Fev 12 22
Mar 10 32
Abr 15 47

Alguém tem alguma idéia de resolver isso sem ter que partir para um bloco 
PL/Sql? Resolver pelo próprio Select?

Obrigado.
Luís.

------------ --------- --------- ------

------------ --------- --------- --------- --------- --------- -
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail- archive.com/ oracle_br@ yahoogrupos. com.br/ 
------------ --------- --------- --------- --------- --------- -
>Funções, Procedures, propostas de emprego - O GRUPO ORACLE_BR TEM SEU PROPRIO 
>ESPAÇO! VISITE: http://www.oraclebr .com.br/ 
------------ --------- --------- --------- --------- --------- - Links do 
Yahoo! Grupos

 














      

[As partes desta mensagem que não continham texto foram removidas]

Responder a