0
を取得私は完全に配列との良好ではないと私はこれを返すデータベースクエリ持っている:私はどのように多くのポイント、各ユーザをカウントするためにループを使用してきましたPHPのカウント配列で出現し、平均
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;
}
それは基本的にすべての出現箇所を数えるが、持つ難しさを取得平均時間もこの配列をデータベースやより良い提案に挿入するのに適していますか?
また、mysqlの 'SUM()'、 'COUNT()'、 'GROUP BY'を利用するクエリを使用することもできます。 – frz3993
私はそれをやろうとします。 –
'GROUP BY USER'を使って'(SUM(Time)/ COUNT(ID))AS TimeAverage'が動作すると思います。または 'GROUP BY USER、TASK'または' GROUP BY TASK、USER'を使用します。どちらにしてもあなたのケースに合っています。 – frz3993