我有一个存储过程,在该过程中,我根据提供的date列选择几列。结果应基于当前财政年度 从1月5日开始。
但是我如何创建用于自我更新日期过滤器的逻辑,该逻辑将设置为 自动开始财政年度,而无需每年更新存储过程?
SELECT
SUM([RetailPrice]) AS Retail,
SUM([CostPrice]) AS Cost,
SUM([MarketPrice]) AS Market
FROM
PriceDetail
WHERE
[UserID] = '0029'
AND [Date] >= CONVERT(DATETIME, '2019-01-05')
答案 0 :(得分:3)
如果您从未在一年的前五天跑步:
select SUM([RetailPrice]) AS Retail,
SUM([CostPrice]) AS Cost,
SUM([MarketPrice]) AS Market
from PriceDetail
where [UserID] = 0029 and
[Date] >= datefromparts(year(getdate()), 01, 05);
如果您需要它在一年的前六天工作:
where [UserID] = 0029 and
[Date] >= datefromparts(year(dateadd(day, -5, getdate())), 01, 05);