Я пытаюсь вычислить разницу дат между последовательными строками на основе indicator_id, чтобы найти случаи, когда разница не превышает 3 лет.
year indicator_id
-------------------------- ---------------
January 1, 1999, 12:00 AM 1
January 1, 2000, 12:00 AM 1
January 1, 2001, 12:00 AM 1
January 1, 2006, 12:00 AM 1
Результат, который я пытаюсь получить is
year indicator_id Diff
-------------------------- --------------- ------
January 1, 1999, 12:00 AM 1 0
January 1, 2000, 12:00 AM 1 1
January 1, 2001, 12:00 AM 1 1
January 1, 2006, 12:00 AM 1 5
Я пробовал следующий запрос, но он просто возвращает ту же строку с разницей в 0
SELECT indicator_id,
year,
year - lag(year) over (order by year) as Diff
FROM education_data
Пожалуйста, помогите