2015-12-02 38 views
1

我的查询:如何总结行的数据具有相同的ID

"SELECT sent_who, sent_amount FROM game1 ORDER BY sent_who ASC;" 

输出:

array (size=4) 
    0 => 
    array (size=4) 
     'sent_who' => string '1' (length=1) 
     0 => string '1' (length=1) 
     'sent_amount' => string '1' (length=1) 
     1 => string '1' (length=1) 
    1 => 
    array (size=4) 
     'sent_who' => string '2' (length=1) 
     0 => string '2' (length=1) 
     'sent_amount' => string '1' (length=1) 
     1 => string '1' (length=1) 
    2 => 
    array (size=4) 
     'sent_who' => string '2' (length=1) 
     0 => string '2' (length=1) 
     'sent_amount' => string '1' (length=1) 
     1 => string '1' (length=1) 
    3 => 
    array (size=4) 
     'sent_who' => string '2' (length=1) 
     0 => string '2' (length=1) 
     'sent_amount' => string '1' (length=1) 
     1 => string '1' (length=1) 

我想要什么:

array (size=4) 
    0 => 
    array (size=4) 
     'sent_who' => string '1' (length=1) 
     0 => string '1' (length=1) 
     'sent_amount' => string '1' (length=1) 
     1 => string '1' (length=1) 
    1 => 
    array (size=4) 
     'sent_who' => string '2' (length=1) 
     0 => string '2' (length=1) 
     'sent_amount' => string '3' (length=1) 
     1 => string '1' (length=1) 

我想在阵列合并相同sent_who ,也在同一阵列中加上sent_amount。 如果我使用GROUP BY而不是ORDER BY它适用于sent_who,但它不给出sent_amount

回答

1

总和试试这个:

SELECT sent_who, SUM(sent_amount) as total_sent_amount 
FROM game1 
GROUP BY sent_who 
ORDER BY sent_who ASC 

使用SUM(sent_amount)将总结sent_amount的所有值的具体sent_who这我们使用GROUP BY sent_who进行分组。

所以你会得到你想要的数组。

相关问题