问题描述
- mysql分组累计sql问题
-
某表有3个字段 分别为month money type 表结构和数据如下
我想根据表的月份对表数据进行分组,并且还进行累计,比如2月份的累计数据就等于1月份的加上2月份的。 大概最后得出的结构如下图
求高手帮忙指点一下sql 不知道一条sql语句能否实现,如果实现不了 哪就两个sql也可以。
解决方案
差不多就是下面这样,没有调测,自己试试
SELECT MONTH,SUM(MONEY) MONEY,总累计,省内累计,省外累计 from
(select month,money
,(select sum(money) from 某表 where month>='201501' and month<=r.month) 总累计
,(select sum(money) from 某表 where month>='201501' and month<=r.month and type='省内') 省内累计
,(select sum(money) from 某表 where month>='201501' and month<=r.month and type='省外') 省外累计
from 某表 r
) y group by month,总累计,省内累计,省外累计 order by MONTH
时间: 2025-01-19 18:45:15