我有一個表格,稱爲預測,我們將在未來6個月內存儲所有產品的預測。例如,當我們在11月份時,我們創建了12月,1月,2月,3月,4月和5月的預測。該預測表看起來像下面通過postgres計算過去3個月中的月度預測
+----------------+---------------+--------------+----------+
| product_number | forecasted_on | forecast_for | quantity |
+----------------+---------------+--------------+----------+
| Prod 1 | 2016-11-01 | 2016-12-01 | 100 |
| Prod 1 | 2016-11-01 | 2017-01-01 | 200 |
| Prod 1 | 2016-11-01 | 2017-02-01 | 300 |
| Prod 1 | 2016-11-01 | 2017-03-01 | 400 |
| Prod 1 | 2016-11-01 | 2017-04-01 | 500 |
| Prod 1 | 2016-11-01 | 2017-05-01 | 600 |
+----------------+---------------+--------------+----------+
一個在表格中包含產品編號的列表,並在其上創建的預測,即forecasted_on的日期和它的預測是與預測一起創建了一個月數量。
每個月的數據都會在接下來的6個月內添加。因此,當預測結果爲2016年1月1日時,預測將在1月至6月之間建立。
我想創建一份報告,顯示過去3個月總預測的變化情況。這樣
+------------+----------------+---------------+----------------+
| | 0 months prior | 1 month prior | 2 months prior |
+------------+----------------+---------------+----------------+
| 2016-12-01 | 200 | 150 | 250 |
| 2017-01-01 | 300 | 250 | 150 |
| 2017-02-01 | 100 | 150 | 100 |
+------------+----------------+---------------+----------------+
事情目前我使用了很多重複的代碼在軌生成此表。我想知道是否有更簡單的方法直接使用SQL查詢來完成它。
任何幫助將不勝感激。