欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

请教一个php + mysql 求月平均 求年平均的高效算法

程序员文章站 2022-04-18 15:13:52
...
最近要做一个血压的统计表。

比如数据库是这样的:
userid sys dia pul time
----------------------------------------------------
user1 88 90 78 时间戳
user2 93 100 90 时间戳
........
........
.......
--------------------------------------------------

现在要将一个月的时间段的数据求平均。有三个平均数:

一个是sys,
一个是dia,
一个是pul;


我是这样想的。如果一天有多次测量数据。那要求这个数据的平均。如果这一天没有测量数据。就忽略!就是月平均是将每一天的平均数据统计出来。年平均就是将每个月的数据平均出来!突然觉得这个复杂了。因为是平均每天的数据。再返回给客户端.怎么才能使用数据库的压力不会太大!非常担心用户多了。出现什么情况!求各位大大支支招!谢谢!


回复讨论(解决方案)

数据库提供有求平均值的函数 avg

你需要什么,就要求数据库做什么。不必担心数据库是否能承受,正所谓用人不疑

做个缓存,缓存5秒,都能减轻数据库很大压力。

这个不用担心,你这个需求还没那么庞大到mysql做不了!
你只要想下怎么处理这个业务就好了!

这个不用担心,你这个需求还没那么庞大到mysql做不了!
你只要想下怎么处理这个业务就好了!


3q

做个缓存,缓存5秒,都能减轻数据库很大压力。



缓存方面有什么好介绍

数据库提供有求平均值的函数 avg

你需要什么,就要求数据库做什么。不必担心数据库是否能承受,正所谓用人不疑


谢谢!如果在数据库弄一个专门保存月平均和年平均的表单。这样有需要么

表单?
其实可以做成视图(view)这样在查询时就不需计算了

memcache ,

表单?
其实可以做成视图(view)这样在查询时就不需计算了



需要返回数据给手机应用端!这个方法可行吗

memcache ,



百度了一下。好像很强大

当然,给火星人都可以

当然,给火星人都可以



还是不明白那个视图是怎么弄的

select avg(sys),avg(dia),avg(pul),substr(sqltime,0,8) as tips from table group by tips