У меня есть таблица, в которой мне нужно выбрать из всего этого правила:Postgres производительность внутренний запрос
id = 4524522000143 and validPoint = true
and date > (max(date)- interval '12 month')
-- the max date, is the max date for this id
Объясняя правила: Я должен получить все регистры и сосчитать их, они должны быть не менее 1 года старый из новейшего регистра.
Это мой фактический запрос:
WITH points as (
select 1 as ct from base_faturamento_mensal
where id = 4524522000143 and validPoint = true
group by id,date
having date > (max(date)- interval '12 month')
) select sum(ct) from points
Есть ли более эффективный способ для этого?