我有一张包含客户每月数据的表格。我想计算从随后几个月到最初开始月份的用户百分比变化。例如,一个客户可能在第一个月有 10 个用户,在第二个月有 14 个用户,在第三个月有 20 个用户,在第 4 个月有 5 个用户。我想计算从随后每个月到第一个月的百分比变化(而不是逐月变化)。这是mysql可以处理的吗?
问问题
255 次
1 回答
0
这是你想要的?假设下表结构
sql> 创建表 pct (x int(5)) ENGINE=MyISAM ;
sql> 插入 pct 值 (10),(14),(20),(5) ;
sql> SET @fmonth=-9999 ;
sql> select x, ((x*100)/fmonth)-100 as pctcng from (select x, if(@fmonth<0,@fmonth:=x, @fmonth) as fmonth from pct) as pct ;
+------+----------+
| x | pctcng |
+------+----------+
| 10 | 0.0000 |
| 14 | 40.0000 |
| 20 | 100.0000 |
| 5 | -50.0000 |
+------+----------+
4 行一组(0.00 秒)
确保将 @fmonth 重置为不在实际数据中的值。在本例中,我将其设为负 9999。
于 2013-10-03T16:53:47.243 回答