mysql分组累计求和

Star英

关注

阅读 81

2022-01-04

先看一下数据库的数据是什么样子的,根据您的实际情况对号入座.
在这里插入图片描述
根据userid进行累计求和
如果你用的是8.0以上的版本就可以用窗口函数sum与partition by进行组合计算

select userid,date,sum(order_count) over (partition by userid ,order by date) as 累计 from order_list

在没有窗口函数前提下可借助自定义函数进行计算

select userid,date,
@s:=if(@pro=userid,@var := @var + order_count,@var:=order_count) as su ,(@pro:=userid) as 辅助1
from (select * from order_list order by userid )b, (select @var := 0,@pro:= null, @s:=0) a

结果如下:
在这里插入图片描述

精彩评论(0)

0 0 举报