MYSQL 中计算累积计算,如下描述,sql应该怎么写

MYSQL 中计算累积计算,如下描述,sql应该怎么写,第1张

这个得用到存储过程和循环

delimiter $$// 定义结束符为 $$

drop procedure if exists wk// 删除 已有的 存储过程

create procedure wk()//  创建新的存储过程

begin

declare i int// 变量声明

set i = 0

while i <日期 do // 循环体

set i = i +xx

insert into sum values (i)

end while

end $$ // 结束定义语句

// 调用

delimiter // 先把结束符 回复为

call wk()

创建表:

create table test

(date datetime,

userid varchar(2),

amount int)

insert into test values ('2018-10-02 00:00:00','u1',20)

insert into test values ('2018-10-02 21:09:28','u2',20)

insert into test values ('2018-10-02 21:09:29','u3',30)

insert into test values ('2018-10-03 21:36:44','u1',20)

insert into test values ('2018-10-03 21:36:46','u2',72)

insert into test values ('2018-10-03 21:36:52','u3',30)

insert into test values ('2018-10-30 21:36:54','u1',10)

insert into test values ('2018-10-30 21:36:57','u2',10)

执行:

select a.date,a.userid,a.amount,sum(b.amount) from test a,test b where a.userid=b.userid and a.date>=b.date group by a.date,a.userid,a.amount

结果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8620462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存