2016-05-23 10 views
1

Ich möchte um eine Abfrage wie die folgende Tabelle bitten?Orakel Abfrage sequenzielle Summierung pro Zeilen

------------------------------------- 
ID Date  Input Output Total 
------------------------------------- 
1 2016-05-01 10  0  10 
1 2016-05-02 2  -1  11 
1 2016-05-03 0  -5  6 
1 2016-05-04 0  -1  5 

gehe ich davon einen Tisch "TABLE_A" haben, die eine Spalte. (ID, Name, Datum, Eingang, Ausgang) hat wie man Abfrage mit Ergebnissen wie oben erzeugt.

Antwort

1

können Sie SUM OVER Funktion:

SELECT *, 
    SUM(Input + Output) OVER(PARTITION BY ID ORDER BY Date) AS Total 
FROM table_a 
1

Verwenden SUM() OVER(..) Fensterfunktion, die produzieren kumulative Summe:

SELECT t.id,t.date,t.input,t.output, 
     SUM(t.output+t.input) OVER(PARTITION BY t.ID ORDER BY t.date) as Total 
FROM YourTable t