sql >> Database >  >> RDS >> Oracle

Dynamisch lopend totaal

GE-UPDATE Ben je hier naar op zoek?

CREATE VIEW vw_rain_stats
AS
  SELECT TRUNC(rain_date, 'MM') rain_date,
         SUM(amt) amt
    FROM rain_stats
   GROUP BY TRUNC(rain_date, 'MM')
;

Ontvang maandelijkse bedragen voor het jaar 2012

SELECT rain_date,
       amt,
       SUM(amt) OVER (ORDER BY rain_date) running_amt
  FROM vw_rain_stats
 WHERE rain_date BETWEEN '01-JAN-12' AND '01-DEC-12';

Ontvang maandelijkse bedragen vanaf december 2011

SELECT rain_date,
       amt,
       SUM(amt) OVER (ORDER BY rain_date) running_amt
  FROM vw_rain_stats
 WHERE rain_date >= '01-DEC-11';

Voorbeelduitvoer:

|          RAIN_DATE | AMT | RUNNING_AMT |
------------------------------------------
| December, 01 2011  |  80 |          80 |
|  January, 01 2012  |  30 |         110 |
| February, 01 2012  |  70 |         180 |
|    March, 01 2012  | 110 |         290 |
| .................. | ... | ........... |

Hier is SQLFiddle demo



  1. Hoe maak je een SOM zonder group by

  2. Slaapstand en Oracle-reeks

  3. mysql - bevindt zich vandaag tussen twee kolomwaarden

  4. Een tabel maken met mysql, php en ajax (met jQuery)