Задание: 69 (Serge I: 2011-01-06)
По таблицам Income и Outcome для каждого пункта приема найти остатки денежных средств на конец каждого дня, в который выполнялись операции по приходу и/или расходу на данном пункте.
Учесть при этом, что деньги не изымаются, а остатки/задолженность переходят на следующий день.
Вывод: пункт приема, день в формате "dd/mm/yyyy", остатки/задолженность на конец этого дня.
with t as
(
select point, "date", inc, 0 AS "out" from income
union all
select point, "date", 0 AS inc, "out" from outcome
)
SELECT t.point, TO_CHAR ( t."date", 'DD/MM/YYYY') AS day,
( select SUM(i.inc) from t i
where i."date" <= t."date" and i.point = t.point )
-
( select SUM(i."out") from t i
where i."date" <= t."date" and i.point = t.point ) AS rem
from t
group by t.point, t."date"