我的表是“Activity_table”,有 4 列。如何创建一个函数,对每个 Peroson 2 之前和当前的事件进行求和? 我的 Activity_table
ID PID AID Act
1 1 1 12
2 1 2 32
3 2 1 5
4 1 3 21
5 2 2 12
6 2 3 19
7 1 4 11
8 2 4 6
PID-PersonID; AID-事件ID;行动-事件值
我的目标:
ID PID AID Act SUM
1 1 1 12 12
2 1 2 32 44
3 2 1 5 5
4 1 3 21 65
5 2 2 12 17
6 2 3 19 36
7 1 4 11 64
8 2 4 6 37
总和1=12;和2=32+12;总和3=5; Sum4=21+32+12;和5=12+5;和6=19+12+5;和7=11+21+32; Sum8=6+19+12;谢谢,
最佳答案
要使用前两行和当前行,
SELECT ID,PID,AID,Act,
(SELECT SUM(Act)
FROM Activity_table
WHERE ID <= a.ID
AND ID >= a.ID - 2
AND PID = a.PID)
FROM Activity_table a;
关于mysql - 如何计算 MySQL 表中前一行和当前行的总和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27959353/