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

Làm thế nào để tính một tổng tích lũy từ dưới lên?

Hãy thử điều này

SELECT 100+ Sum(CASE WHEN name = 'a' THEN qty ELSE 0 END)OVER(ORDER BY itemorder DESC) as modifyed_sum,
       qty,
       name,
       itemorder
FROM   Yourtable
ORDER  BY itemorder ASC

Một cách khác

SELECT 100 + (SELECT Sum(CASE WHEN b.name = 'a' THEN b.qty ELSE 0 END)
              FROM   yourtable  b
              WHERE  a.itemorder <= b.itemorder),
       qty,
       name,
       itemorder
FROM   yourtable a
ORDER  BY itemorder ASC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLAlchemy:nhóm theo ngày trên nhiều bảng

  2. RPostgreSQL - R Kết nối với Amazon Redshift - Cách VIẾT / Đăng Tập dữ liệu lớn hơn

  3. Chọn tên và giá trị cột từ bảng

  4. Thời gian TTFB mạng cao trên máy chủ cục bộ và từ xa

  5. Di chuyển PostgreSQL sang Đám mây - So sánh các giải pháp từ Amazon, Google và Microsoft