Я пишу запрос, который выглядит примерно так:
select parent.id,
parent.date,
sum(child.amount) filter (where child.is_ok) as child_sum,
sum(sum(child.amount) filter (where child.is_ok)) over (order by parent.date)
from parent
left join child on parent.id = child.parent_id
group by parent.id, parent.date
order by parent.date desc
Как вы можете видеть, я использую оконную функцию для получения промежуточного итога более child.amount
.
Вопрос в том, существует ли какой-либо стандартный или нестандартный способ ссылки на child_sum
без копирования его выражения внутри оконной функции sum
?
Я использую Postgres 10.