mysql 分组时求和
时间: 2023-08-17 09:14:35 浏览: 52
在MySQL中,可以使用窗口函数或自定义函数来进行分组求和。
如果你使用的是MySQL 8.0以上的版本,可以使用窗口函数sum与partition by进行组合计算。例如,你可以使用以下查询语句来根据userid进行累计求和:
```
select userid, date, sum(order_count) over (partition by userid order by date) as 累计 from order_list;
```
这将返回一个结果集,其中包含每个userid的累计订单数量。
如果你使用的是没有窗口函数的MySQL版本,你可以借助自定义函数来进行计算。例如,你可以使用以下查询语句来根据userid进行累计求和:
```
select userid, date, @s:=if(@pro=userid,@var := @var + order_count,@var:=order_count) as 累计, (@pro:=userid) as 辅助1
from (select * from order_list order by userid) b, (select @var := 0,@pro:= null, @s:=0) a;
```
这将返回一个结果集,其中包含每个userid的累计订单数量。
请根据你的实际情况选择适合的方法进行分组求和。
#### 引用[.reference_title]
- *1* *2* [mysql分组累计求和](https://blog.csdn.net/weixin_41867184/article/details/122311894)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]