将多个列中的列值相乘,然后添加

时间:2015-04-03 18:08:18

标签: php mysql

我需要从数据库中获取销售的价格和金额,然后将它们相乘以获得每个数据的输出,然后将它们全部加在一起。我想我可以使用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 个答案:

答案 0 :(得分:1)

为什么不在数据库中进行计算?

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

编辑:

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