Для генерации серии (последовательности), например периодов, необходимо использовать конструкцию generate_series

Запрос в таком случае будет выглядеть следующим образом:

select * from (select CAST('2011-01-01' AS DATE) + (n || ' year')::INTERVAL as START_DATE
FROM generate_series(0, 23) n) m
where START_DATE<current_date

А результат: