我完全不擅长数组,我有一个数据库查询返回以下内容:
ID USER TASK Points Time
1 admin Accounting 1 -7
1 admin Accounting 1 -15
1 admin Accounting 1 -1146
1 admin Accounting 1 -2
1 admin Accounting 1 -3
2 Mike Encoding 1 -7
2 Mike Encoding 1 -55
2 Mike Encoding 1 0
2 Mike Encoding 1 -6
3 Adam Printing 1 -5
3 Adam Printing 1 -12
3 Adam Printing 1 -7
3 Adam Printing 1 -4
3 Adam Printing 1 -8
3 Adam Printing 1 -10
我使用了一个循环来计算每个用户的积分,但我在获取他们的平均时间时遇到了一个问题,即(时间总和/计数(时间))
到目前为止,我的代码是:
while($row = mysqli_fetch_assoc($result))
{
$countCase[$row['TASK']] = isset($countCase[$row['TASK']]) ? $countCase[$row['TASK']] + 1 : 1;
$countUser[$row['TASK']][$row['USER']] = isset($countUser[$row['TASK']][$row['USER']]) ? $countUser[$row['TASK']][$row['USER']] + 1 : 1;
}
它基本上统计了所有的发生次数,但很难获得平均时间。这个数组是否适合将其插入数据库或更好的建议?
您可以使用group和MySQL函数重写查询来解决这个问题。