我似乎对下面的代码有一个主要问题是使用datepart公式。我试图在上个月末(对于任何给定的月末)回收每月经常性收入的所有月份的回溯,并且只有该日历月的收入变化可以追溯到时间。然而,奇怪的是我可以将datepart公式中的“-1”更改为绝对任何东西,它会带回相同的值。无论我改变什么,发生了什么,比如说,2月28日,它只会带来3月份的变化。
Select P.End_Date as "Period",
(Select sum(RMR_Amount) FROM ABC_Final.dbo.AR_RMR_Tracking as Tracking
inner join ABC_Final.dbo.AR_Customer_Site as Site on Site.Customer_Site_Id
= Tracking.Site_Id
where Tracking.Effective_Date <=eomonth(dateadd(m,-1,P.End_Date),0)
and Tracking.Effective_Date <= '3/31/2017' and
datepart(m,dateadd(m,-1,Tracking.Effective_Date)) =
datepart(m,dateadd(m,-1,P.End_Date))
and Site.Business_name not like
'%Dog%') as "Beginning Monthly RMR"
FROM ABC_FINAL.DBO.so_ACCOUNTING_PERIOD as P
WHERE End_Date <= '3/31/2017'