Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

truy vấn sql để tính tổng và cộng tổng từ các hàng trước đó

Bạn có thể sử dụng truy vấn sau

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');

với sự tổng hợp theo kết hợp năm-tháng.

Bản trình diễn



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ứng dụng VB6 oracle 12 kết nối 64bit

  2. Dừng hoặc chấm dứt truy vấn đang chạy dài trong JDBC

  3. Tạo và cấu hình máy chủ liên kết Oracle trong SQL Server

  4. Cài đặt trình điều khiển Oracle Attunity trong Visual Studio 2017

  5. Làm cách nào để xử lý các ngoại lệ to_date trong trạng thái SELECT để bỏ qua các hàng đó?