PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak obliczyć skumulowaną sumę od dołu do góry?

Wypróbuj to

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

Inny sposób

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. Czy PostgreSQL może indeksować kolumny tablicy?

  2. Postgresql - Jak przyspieszyć aktualizację ogromnej tabeli (100 milionów wierszy)?

  3. Formatowanie daty (RR:MM:DD:godzina) w programie Excel

  4. Postgres 9.4 zawiesza się podczas odświeżania zmaterializowanego widoku

  5. AFTER LOGON(Oracle) trigger w PostgreSQL z rozszerzeniem – login_hook