我有一张表,其中包含客户的月度数据。我想计算用户从后续月份到初始开始月份的变化百分比。例如,客户可能在第一个月有10个用户,在第2个月有14个用户,在第3个月有20个用户,在第4个月有5个用户。我想计算从每个后续月份到初始月份的百分比变化(而不是月份变化)。这是mysql可以处理的东西吗?
答案 0 :(得分:0)
这是你在找什么?假设有以下表结构
SQL> CREATE TABLE pct(x int(5))ENGINE = MyISAM;
SQL>插入pct VALUES(10),(14),(20),(5);
SQL> SET @ fmonth = -9999;
SQL>选择x,((x * 100)/ fmonth)-100作为pctcng(选择x,if(@ fmonth< 0,@ fmonth:= x,@ fmonth)作为pct的fmon)作为pct;
+------+----------+
| x | pctcng |
+------+----------+
| 10 | 0.0000 |
| 14 | 40.0000 |
| 20 | 100.0000 |
| 5 | -50.0000 |
+------+----------+
4行(0.00秒)
确保将@fmonth重置为不在实际数据中的值。在这个例子中,我把它作为负9999。