需求分析
现有一数据库中user表中有一字段(gbs),是记录用户使用流量的,实时呈现用户使用的总流量。现需要将此字段统计出每天、每月用户增加的流量。
数据库结构
考虑到数据库和服务器的负载,采用每7天一个星期展现的形式,最多展现7天流量记录,每月总计流量,最多12个月,且每星期和每月的字段循环使用,在数据库中新建表gbs_log,结构如下:
uid | gbs_old | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | January | February | March | April | May | June | July | August | September | October | November | December |
处理过程
每日流量 | 每月流量 | 流量计算对比值(gbs_old) | 开始时间 | 结束时间 | 总流量(gbs) | 增加的流量 | ||
2017/1/1 | 星期一 | 1 | 1 | 1 | 0:00 | 1:00 | 1 | 1 |
4 | 4 | 4 | 2:00 | 3:00 | 4 | 2 | ||
4 | 4 | 4 | 3:00 | 4:00 | 4 | 0 | ||
计算值 | 0 | 4 | 4 | |||||
2017/1/2 | 星期二 | 0 | 5 | 5 | 0:00 | 1:00 | 5 | 1 |
1 | 6 | 6 | 1:00 | 2:00 | 6 | 1 | ||
计算值 | 0 | 0 | 0 | |||||
2017/2/1 | 星期一 | 1 | 1 | 7 | 0:00 | 1:00 | 7 | 1 |
3 | 3 | 9 | 1:00 | 2:00 | 9 | 2 |
每次执行的时候:
①先取 总流量(gbs) 减去 流量计算对比值(gbs_old) 得出 增加流量
②判断 当 增加流量 大于0的时候(说明有流量增加)
然后分别取出 当前日期每天和每月字段中的流量,将每天、每月的值分别加上 增加流量,更新到 每天、每月字段 中。
最后将 总流量(gbs) 更新至 流量计算对比值(gbs_old)。
③需要设置:在 每天凌晨 和 每月初始日 的时候,清空 当前天 和 月份的流量(因为是循环使用)。
© 著作权归作者所有
下一篇: win7 桌面 快捷方式箭头 恢复
文章评论(0)