2016-10-25 11 views
0

私はこのデータを持っているGROUP BY mysqlを配列にエコーする方法は?

ID DATEREG  REQUEST 
1 2016-10-24 PAPER 
2 2016-10-24 PENCIL 
3 2016-10-24 BALLPEN 
4 2016-10-25 PAPER 
5 2016-10-26 PENCIL 

ここで私は、全要求を計算するために使用するクエリです。

$rows = ''; 
    $query = "SELECT id,count(*) as total,date,request FROM list GROUP BY date,request ORDER BY id DESC LIMIT 10"; 
    $result = mysqli_query($con,$query); 
    $total_rows = $result->num_rows; 
    if($result) 
    { 
    $rowsv1 = mysqli_fetch_all($result, MYSQLI_ASSOC); 
    print "<pre>"; 
    echo print_r($rowsv1); 
    print "</pre>"; 
    } 

と要求は表示のみ1(DESC順)である例の結果:

[0] => Array 
    (
     [id] => 5 
     [total] => 3 
     [datereg] => 2016-10-24 
     [request] => PAPER 
    ) 

私は次のようになりたい:私は変更

[0] => Array 
    (
     [id] => 5 
     [total] => 3 
     [datereg] => 2016-10-24 
     [request1] => 1(total of PAPER) 
     [request2] => 2(total of PENCIL) 
     [request3] => 3(total of BALLPEN) 
    ) 

おかげ

答えて

0

あなたの質問はちょっと今、最初にそれが日付順に要求によってグループ化されます。しかし、あなたはそれ以外の場合は、日付でグループ一つだけに与えられた日付の結果を集計につながるであろう1つの配列項目に

$query = "SELECT id,count(*) as total,date,request FROM list GROUP BY request, date ORDER BY id DESC LIMIT 10"; 

を置き、すべての3つの要求を持つためにあなたのPHPで結果を集約する必要があります要求。