MySQL实现阶段累加的sql写法(代码示例)

不言
不言 转载
2019-01-15 10:43:05 5015浏览

本篇文章给大家带来的内容是关于MySQL实现阶段累加的sql写法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

最近有一个需求:统计每日充值/消费之后的余额,对于这种需求,其实也很简单,只需要在每次充值/消费后,计算下余额,然后保存下来就可以了。但是对于这种需求,一条sql就能搞定,都不需要做冗余字段

图表展示这个场景可能更直白

862004420-5c3d425f45710_articlex.png

需要的结果

682979374-5c3d41fa40f7f_articlex.png

写法一:

select t.*
,(select sum(price) from t_charge temp where temp.date <= t.date) as total_price
from t_charge t
group by t.id;

写法二:

select t.*, sum(temp.price) as total_price
from t_charge t,t_charge temp
where t.date <= temp.date
group by t.id;

以上就是MySQL实现阶段累加的sql写法(代码示例)的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除