0

PHP で mysql の結果の平均を計算したい (フレームワークとして CodeIgniter を使用している)。私の(モデル)コード:

    $query = $this->db->query('SELECT stars FROM feedback');
    $res = $query->result_array();
    $avrage = array_sum($res); // The impossible part
    $avrage = round($avrage,0);

クエリの結果は次のようになります: (print_r)Array ( [0] => Array ( [stars] => 5 ) [1] => Array ( [stars] => 3 ) )

「5」と「3」を別の配列に入れたいだけなので、 array_sum() がその仕事をすることができます。どうすればいいですか?

ありがとう。

4

3 に答える 3

2

AVG()を使用してSQLで直接実行できます

SELECT avg(stars) as avg_stars
FROM feedback
于 2013-08-31T18:18:51.833 に答える
0

AVGクエリで直接使用しないのはなぜですか?

'SELECT AVG(stars) as average FROM feedback'
于 2013-08-31T18:19:03.233 に答える
0

これを行う最善の方法は、次のように SQL クエリを変更することですSELECT AVG(stars) as stars_average FROM feedback。次に、結果セットをフェッチした後、PHP コードで次の操作を実行できます$average = $res[0]['stars_average'];

于 2013-08-31T18:23:13.887 に答える