2017-07-27 66 views
1

我有這樣的代碼,我想獲得的所有類別充分利用MySQL查詢總有陣

我的代碼的總組合至今

 for ($k = 0; $k < 4; $k++) { 

    $result= $DB->query("SELECT total FROM ".$DB->prefix("mystat")." WHERE year='$year' AND category='$categoryname[$k]'"); 
       $row = $DB->fetchArray($result); 
      $total=$row['total']; 
echo $total++; 
    } 

讓說,我有這個數據

A - 1 
B - 2 
C - 3 

我的電流輸出

123 

我的理想輸出

6 

我該如何糾正?

+1

https://stackoverflow.com/questions/1496682/how-to-sum-values-of-the-array-of-the-same-key請看看這個。這可能會幫助你。 –

回答

1

這是因爲你在循環中進行回聲。而且你的邏輯是錯誤的。改變你的代碼,如:

$total = 0; 
for ($k = 0; $k < 4; $k++) { 
    $result= $DB->query("SELECT total FROM ".$DB->prefix("mystat")." WHERE year='$year' AND category='$categoryname[$k]'"); 
    $row = $DB->fetchArray($result); 
    $total +=$row['total']; 
} 
echo $total; // DO echo here 

此外,如果你不需要的類別,總分別只需要所有的總和那麼它最好使用SUM與SQL group by類別。

+0

非常感謝 – gtroop