sql >> Databáze >  >> RDS >> PostgreSQL

Jak vypočítat kumulativní součet zdola nahoru?

Zkuste toto

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

Jiný způsob

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. CHYBA:aktualizace nebo smazání v tabulce uživatelé porušují omezení cizího klíče fk_rails_03de2dc08c v komentářích tabulky

  2. Připojit k databázi mysql 5.0 pomocí čistého vbscriptu?

  3. MySQL REPLACE IN na více klíčích?

  4. Pokus o konstrukci PostgreSQL Query pro extrahování textové hodnoty z JSON v objektu, v poli, v objektu, v poli, v objektu