2015-04-03 44 views
0

我需要從數據庫中獲取售出價格和數量,然後將它們相乘以得到每個數據的輸出,然後將它們一起添加。我想我可以使用foreach循環,但我不確定變量是否每次都會保留它的值。這是我到目前爲止所嘗試的:將多行中的列值相乘,然後添加

$query = "SELECT * FROM `inv`"; 
    $data = mysqli_query($dbc, $query); 
    while($row = mysqli_fetch_array($data)){ 
     if(isset($fin2)){ 
      $fin = $fin2; 
     } else { 
      $price = str_replace('$', '', $row['price']); 
      $fin2 = ($row['sold'] * $price + $fin);     
     } 
     if(isset($fin)){ 
     $fin = ($fin + $fin2); 
     echo $fin; 
     } 

正如你所看到的,我有點困惑,任何幫助將不勝感激。

回答

1

爲什麼不在數據庫中進行計算?

SELECT SUM(price * sold) as total 
FROM `inv`; 

編輯:

SELECT SUM((replace(price, '$', '') + 0) * sold) as total 
FROM `inv`; 
+0

......咄。謝謝 – Core 2015-04-03 18:11:52

+0

好吧,他的價格行似乎有一個美元符號,所以它的稍微複雜一點就是 – 2015-04-03 18:24:07

+0

'select sum(trim(引導'$'from price)* sold)'會做 – 2015-04-03 18:26:50

相關問題