Я пытаюсь рассчитать прогноз продаж на основе 3 предыдущих месяцев, которые могут быть действительными или прогнозируемыми.SQL - рассчитать средний прогноз
company_id Year Month Actuals Forecast
123456 2014 1 10
123456 2014 2 15
123456 2014 3 17
123456 2014 4 14.00
123456 2014 5 15.33
123456 2014 6 15.44
123456 2014 7 14.93
Month 4 = (10+15+17)/3
Month 5 = (15+17+14)/3
Month 6 = (17+14+15.33)/3
Month 7 = (14+15.33+15.44)/3
Скажем, я хочу, чтобы рассчитать прогноз на ближайшие 18 месяцев каждый компании.
Я просматриваю данные за последний год. Некоторые компании имеют, например, 2 месяца данных и других 12 месяцев и так далее.
Я искал и нашел множество различных решений, но все они учитывают только фактические данные.
Я думаю, что мне нужно сделать рекурсивный CTE, но я не могу понять это.
Пожалуйста, помогите :)
Все ваши месяцы упорядочены точно так же, как в вашем примере? Т.е., если n = любой месяц, это расчет месяца просто фактические/прогнозные значения (n-1) + (n-2) + (n-3)/3? – WillardSolutions
Какая у вас СУБД? Поддерживает ли он * Windowed Aggregates *, 'MIN ... OVER (ORDER BY ...)'? – dnoeth
@EatPeanutButter - да и нет. Месяцами являются даты, такие как 01-01-2015 и т. Д. Я только что показал их row_number (если это имеет смысл). – exASHacto