Мои данные выглядят так:
ID Date 1 07/03/2020 2 07/02/2020 3 07/05/2020 4 07/10/2020 1 03/03/2020 2 03/04/2020
Я хочу, чтобы для каждого идентификатора я получал последнюю дату и дату, предшествующую 90 дням. Я не могу использовать для этого максимальную дату и группу.
Если вам нужны все данные в течение трех месяцев с последней даты, вы можете использовать функции окна:
select t.* from (select t.*, max(date) over (partition by id) as max_date from t ) t where date >= date_add(max_day, interval -90 day)