我有一张桌子叫temp_reading
。它有以下列(消费是索引键):
id consumption total
1 100
1 200
1 300
1 400
2 50
2 100
3 200
4 250
现在我想把total显示为
id consumption total
1 100 100
1 200 300
1 300 600
1 300 900
2 50 50
2 100 150
3 200 200
4 250 250
可以像上面那样显示吗?
我尝试了以下查询:
SELECT id,consumption,sum(consumption) as total
FROM temp_reading
GROUP BY consumption;
请帮我解决这个问题。
最佳答案
试试这个:
SELECT id, consumption, IF(@s=@s:=id, @s2:=@s2+consumption, @s2:=consumption) AS total
FROM temp_reading, (SELECT @s:=0, @s2:=0);
关于mysql - 如何在MySQL中执行行的SUM,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13578640/