我最近收到solution的问题,涉及月底日期。现在,我想知道是否存在一种以今天的数据为参考点来预测未来价值的方法。作为背景,我有90天内的每一天的数据值,而我只对月底的日期感兴趣。我希望能够查看特定时期甚至未来,并预测下3个月底的值。
例如,对于特定规则,我需要计算3 / 31、4 / 30和5/31的月末值。只有3/19。我想使用下面的查询说,如果没有结束月结,请使用今天的值。如果1月末已过,则使用该值加上今天的值* 2,然后除以3得到每日平均值。
/* sample SQL below! */
DECLARE @y INT = Year(Getdate())
DECLARE @RuleBegin DATETIME = (SELECT Datefromparts (@y, 3, 1))
DECLARE @RuleEnd DATETIME = (SELECT Datefromparts (@y, 5, 31))
DECLARE @startDate DATETIME = (SELECT CASE
WHEN Getdate() > @RuleBegin THEN @RuleBegin
ELSE Dateadd(dd, -90, Getdate())
END)
SELECT sub.Instrument,
(Sum(sub.GrossExposure) / 3) AS AvgGrossExposure,
FROM (SELECT EOMONTH(DateField) AS EndOfMonthDate,
DateField,
Instrument,
GrossExposure,
FROM table
WHERE DateField BETWEEN @startDate AND Getdate()
) sub
WHERE sub.DateField = EndOfMonthDate
GROUP BY sub.Instrument