Página 1 de 1

[Dica] Coluna de Total Acumulado

Enviado: Sex, 05 Ago 2005 4:02 pm
por dr_gori
Vejam esse sql - mostra o total acumulado da coluna! (sem usar função analítica)

Selecionar tudo

SELECT 
  B.SAL
, SUM(A.SAL) ACUMULADO
FROM 
  EMP A
, EMP B
WHERE A.ROWID <= B.ROWID
GROUP BY B.ROWID, B.SAL
Aí vai um exemplo:

Selecionar tudo

SQL> SELECT 
  2    B.SAL
  3  , SUM(A.SAL) ACUMULADO
  4  FROM 
  5    EMP A
  6  , EMP B
  7  WHERE A.ROWID <= B.ROWID
  8  GROUP BY B.ROWID, B.SAL
  9  /

       SAL  ACUMULADO
---------- ----------
       800        800
      1600       2400
      1250       3650
      2975       6625
      1250       7875
      2850      10725
      2450      13175
      3000      16175
      5000      21175
      1500      22675
      1100      23775
       950      24725
      3000      27725
      1300      29025
                29025

15 rows selected.

SQL> 

Outra forma..

Enviado: Sex, 02 Set 2005 3:31 pm
por leobbg
Só para quem gostar de inventar moda.. mas quem não gosta?? Complicando ou descomplicando.. ai vai mais uma função analitica bem bacana... que tem o mesmo efeito.

Selecionar tudo

SELECT A.SAL
,      SUM( A.SAL ) OVER( ORDER BY A.SAL ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW ) ACUMULADO
FROM   EMP A
GROUP BY A.SAL