How do I get the following query give me the same date for the last N years?
declare @step int = 0;
declare @datobserve date = '2021-11-03';
with dates as
(
select dateadd(year, @step, @datobserve) datobserve, @step step
union all
select dateadd(year, step, datobserve) as datobserve, step - 1
from dates
where 1=1
--and step = step + 1
and step > -4
)
select * from dates
The result I am getting is:
instead of:


@datobserve, instead ofdatobserveand 2)step-1instead ofstep.2020-02-29is the anchor date