如果我有这样的数据:
RAWDATA and INPUT

我该怎么办?

创建一个包含所有第11个月和第12个月的表格,然后将它们联接在一起以形成一个新表格吗?
如果每个商店有12个月而不是2个月的销售怎么办,那么我必须创建12个表,这是无效的。

那么,有没有一种有效的方法来计算与上个月相比的增长?

最佳答案

您将使用join。假设月份列是连续的:

select t.*, tprev.sales,
       100 * ((t.sales / tprev.sales) - 1) as increase
from t left join
     t tprev
     on t.store = tprev.store and t.month = tprev.month + 1;

08-06 09:06