Oracle
 sql >> Baza danych >  >> RDS >> Oracle

zapytanie sql do obliczenia sumy i dodania sumy z poprzednich wierszy

Możesz użyć następującego zapytania

with t1(  dat_dt, credit, debit) as
(
 select date'2019-02-22',10,  5 from dual union all
 select date'2019-02-25',30, 60 from dual union all
 select date'2019-03-10',50, 40 from dual union all
 select date'2019-03-13',100,10 from dual    
)
select max(dat_dt) as "max date",
       sum(credit) as "cr sum",
       sum(sum(credit)) over ( order by to_char(dat_dt,'yyyymm') ) as "progressive credit", 
       sum(debit) as "dr sum",
       sum(sum(debit))  over ( order by to_char(dat_dt,'yyyymm') ) as "progressive debit"
  from t1
 group by to_char(dat_dt,'yyyymm')
 order by to_char(dat_dt,'yyyymm');

z agregacją według kombinacji rok-miesiąc.

Demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Odczytywanie BLOB przy użyciu JDBC Spring bez zestawu wyników

  2. Kolumna niejednoznacznie zdefiniowana

  3. Błąd adaptera protokołu TNS podczas uruchamiania Oracle SQL*Plus

  4. Wyzwalacz Oracle na zagnieżdżonej tabeli

  5. Wyniki funkcji dekodowania Oracle w różnych formatach