首先抱歉我的英文
我试图找到一个requete来计算不同行中值的总和:
[1-9]
答案 0 :(得分:7)
假设第一行定义了排序,您可以使用相关子查询轻松完成此操作:
select r.row1,
(select sum(t2.row1) from requete r2 where r2.row1 <= r.row1) as cumesum
from requete r;
对于较大的表,这可能效率低下,变量会提高性能:
select r.row1,
(@sum := @sum + r.row1) as cumesum
from requete r cross join
(select @sum := 0) params
order by r.row1;
请注意,在这两种情况下,用于排序行的列不需要与累积和计算的列相同。