获取所有唯一行之间的平均差异

时间:2016-07-19 02:08:57

标签: php mysql

我有一个bantracker,每个禁令都会记录到MySQL,我想获得每个unix时间之间的平均差异,这样我就可以根据下次禁令发生时的数据进行估算。

我的想法是最后进入+平均值?也许我完全错了,有人有更好的主意。

表格结构如下所示:enter image description here

每个apikey都是独一无二的。

非常感谢任何帮助/想法我不介意它是MySQL查询还是PHP代码。

谢谢!

2 个答案:

答案 0 :(得分:1)

您正在尝试计算移动平均线:

function moving_average( $array ) {

  $z = sizeof( $array );

  for ( $i = 1; $i < $z; $i++ ) {
    $result[] = $array[ $i ] - $array[ $i-1 ];
  }

  return array_sum( $result ) / count( $result );

}

帽子提示:Calculating the average increase from array values in PHP

答案 1 :(得分:1)

您可以使用(COUNT,SUM)查找平均值

$sql = "SELECT COUNT(time) as count,SUM(time) as sum,MAX(time) as sum FROM table_name";

$avg=$row["sum"]/$row["count"];