На моей работе мне нужно выполнить запрос (или я должен сказать, что это сделает мою жизнь в 100 раз проще), который возвращает: - Сумма всех платежей за каждый месяц года. - Окончательный баланс в конце каждого месяца..
Чтобы получить последнее, мне нужно выбрать столбец 'Окончание_баланса' последней записи каждого месяца.Я уже вычислил сумму, поэтому весь запрос будет выглядеть так:
select
extract(month from request_date):: integer as mon,
extract(year from request_date)::integer as year,
<missing logic here>
sum(total_amount),
from my_table group by 1,2 order by 2
Я искал ответ по stackoverflow и другим сайтам в течение полдня, и я понял, какполучить значение для ОДНОГО месяца и года через
select payer_id
from my_table as last_payer
where extract(month from request_date):: integer = '2'
and extract(year from request_date)::integer= '2019'
order by request_date desc limit 1
, но это работает, только если я укажу конкретную дату.Мне нужно что-то, что делает это для каждого месяца и года.Замена жестко закодированных значений на «mon» и «year» не работает.
Я также добавлю, что я работаю над dbeaver, который, я думаю, не поддерживает функции, но если функции - единственный способ, которым я могу сделать это, я думаю, что я переключусь на использование толькокомандная строка.