MySQL获取一组中每x分钟的列的平均值和总和

用户2693017

我尝试了多个小时以找出对此的查询,但是我没有运气。我什至不知道只有一个查询是否可行。

我有这样的桌子

id - server_id - players_online - performance - timestamp

该表每5-10分钟为每台服务器包含大约一条记录。问题是,我想获取平均性能和每20分钟间隔内的players_online的总和,但是由于同一台服务器在这20分钟内可以出现多次,因此可能会破坏我想要的最终结果:

  1. 以20分钟为间隔分组
  2. 每20分钟间隔每个server_id仅保留一个结果
  3. 每20分钟间隔获取所有服务器的平均性能和players_online的总和

使用ROUND(timestamp /(20 * 60)),我可以轻松地按20分钟的间隔进行分组,但是如何进行。您将如何编写查询?

我到目前为止尝试过的查询:

SELECT avg(performance) as performance, sum(playersOnline) as playersOnline, timestamp
    FROM stats_server
    GROUP BY ROUND(timestamp/(1200))

范例资料:http : //www.mediafire.com/download/z629q3g38qhr46h/stats_server.sql.gz

结果(这次服务器的平均值/总和):

timestamp     | performance | online players
1404757200000 | 93          | 125
1404758400000 | 92          | 120
1404759600000 | 96          | 133
1404759800000 | 93          | 168
1404751000000 | 88          | 122
1404751200000 | 94          | 134

解:

SELECT min20 * 1200 AS timestamp, AVG( performance ) AS performance, SUM( players ) AS playersOnline
        FROM (
            SELECT serverID, FLOOR( UNIX_TIMESTAMP( timestamp ) / 1200 ) AS min20, AVG( performance ) AS performance, AVG( playersOnline ) AS players
            FROM stats_server
            GROUP BY min20, serverID
        ) tmp
        GROUP BY min20
        ORDER BY timestamp
用户2693017

SELECT min20 * 1200 AS timestamp, AVG( performance ) AS performance, SUM( players ) AS playersOnline FROM ( SELECT serverID, FLOOR( UNIX_TIMESTAMP( timestamp ) / 1200 ) AS min20, AVG( performance ) AS performance, AVG( playersOnline ) AS players FROM stats_server GROUP BY min20, serverID ) tmp GROUP BY min20 ORDER BY timestamp

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

MySQL按年和月获取平均值和列和组的总和

来自分类Dev

如何从MySQL表中的一组行中获取平均值和最后数据

来自分类Dev

根据一组条件为多列中的每一行计算自定义平均值

来自分类Dev

用每列的一组平均值填充NaN

来自分类Dev

在矩阵中寻找一组值的平均值

来自分类Dev

一组数字的平均值

来自分类Dev

获取每N组的平均值

来自分类Dev

MYSQL:一组中varchar y:m:d的平均值

来自分类Dev

获取SQL中每X行的平均值

来自分类Dev

如何获取数据框中每列的平均值

来自分类Dev

MYSQL中每一行的平均值

来自分类Dev

计算文件中每一列的平均值

来自分类Dev

在一组列中而不是逐列中找到最小最大平均值,75和95分位数

来自分类Dev

Elasticsearch查询以获取每x分钟/小时/天的中位数/平均值

来自分类Dev

熊猫数据框,为每一组添加一列作为另一列的移动平均值

来自分类Dev

在一组3D图像中按组取平均值

来自分类Dev

Python 3.x 如何保留一组平均值较小的重复项?

来自分类Dev

NetLogo:查找一组海龟的平均值

来自分类Dev

sql计算平均值与一组?

来自分类Dev

stat_Summary一组值的平均值

来自分类Dev

熊猫-一组跨多列的滚动平均值;大数据框

来自分类Dev

熊猫仅用一组平均值替换列的所有值

来自分类Dev

如何在Excel中的一组数据中找到未知平均值

来自分类Dev

唯一组的其他单元格中的平均值

来自分类Dev

一组文档中按位置排列的数组值的平均值

来自分类Dev

在MySQL中显示列数据和单个平均值

来自分类Dev

在MySQL中显示列数据和单个平均值

来自分类Dev

获取用户输入数组中的平均值和所有值的总和?

来自分类Dev

获取用户输入数组中的平均值和所有值的总和?

Related 相关文章

热门标签

归档