sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan beregner man en kumulativ sum fra bunden og op?

Prøv dette

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
 

En anden måde

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. Hvad er meningen med IKKE NULL DEFAULT ''?

  2. Multi-Dimensional Array fra matchende mysql-kolonner

  3. SELECT virker ikke i node.js

  4. FEJL 1005 MySQL Workbench Forward engineering