Как подсчитать предыдущие 24 месяца из текущей строки на основе принципаrelreliefflag (он должен основываться на каждой строке (каждый месяц с предыдущими 24 месяцами). Поэтому подсчитайте главный флаг (Y) от текущей строки до предыдущих 24 месяцев.) ?
Данные, которые у меня есть:
Мне нужны данные:
Код:
-------------------------------------------------------------------------
----Identify customers who are on principal relief more than one month
-------------------------------------------------------------------------
IF OBJECT_ID('tempdb..##PRappliedmorethan_once') IS NOT NULL
DROP TABLE ##PRappliedmorethan_once
select *,
case when PrincipalReliefFlag='Y' then 1 else 0
end PR_applied_months
into ##PRappliedmorethan_once
from ##TL_details_dates2
IF OBJECT_ID('tempdb..##PRappliedmorethan_once1') IS NOT NULL
DROP TABLE ##PRappliedmorethan_once1
select *,
--Identify customers who have applied for principal relief within the past 12 months
sum(PR_applied_months) over (partition by productitemcode, productcode
order by dim_snapshotdate_key
rows between 23 preceding and current row
)
abcd
into ##PRappliedmorethan_once1
from ##PRappliedmorethan_once
Работает, но есть ли лучший способ?