PHP和MySQL字段的PHP总和回声

时间:2015-07-19 22:39:23

标签: php mysql database

我有一个包含以下表格的数据库:

sales
expenses
taxes
earnings

当我销售某些产品时,它会在销售中添加一项,与添加费用相同的费用,在销售和收入时也会自动添加税金。它们位于相同的数据库中但不同的表。

我需要将这些字段加在一起。我一个接一个地做这件事没有这样的问题:

<?php
$query = mysqli_query($db, "SELECT SUM(total) AS `total` FROM `sales`");
while($result = mysqli_fetch_assoc($query)){
echo number_format($result['total'],0,',','.');} 
?>

<?php
$query2 = mysqli_query($db, "SELECT SUM(expense) AS `expense` FROM `expenses`");
while($result2 = mysqli_fetch_assoc($query2)){
echo number_format($result2['expense'],0,',','.');} 
?>

如何将这两者相加并回显结果示例:

sales - expense = value ?

2 个答案:

答案 0 :(得分:1)

<?php
    $query = mysqli_query($db, "SELECT SUM(total) AS `total` FROM `sales`");
    $query2 = mysqli_query($db, "SELECT SUM(expense) AS `expense` FROM `expenses`");
    $total_sales = 0;
    $total_expenses = 0;
    while($result = mysqli_fetch_assoc($query)){
        $total_sales = $total_sales + $result['total'];
        echo number_format($result['total'],0,',','.');
    }
    while($result2 = mysqli_fetch_assoc($query2)){
        $total_expenses = $total_expenses + $result['total'];
       echo number_format($result2['expense'],0,',','.');
   } 
?>

总和为$total_sales-$total_expenses

答案 1 :(得分:0)

你确定要将这两者结合起来吗?

至少有一些好处可以解决这些问题。 首先,逻辑很清楚。 其次,如果你有很多这样的数据,当你分别加总时,那些不会相互影响。因为当您选择数据并执行某些操作时,如果数据不是很大,那就没问题了。但如果它是巨大的数据,那么你的数据库和你的cpu和内存都会有很大的压力。 第三,当你在数据库中选择时,不建议进行sum,sub,division和multiplication等操作,尽管数据库可以这样做。因为这些操作实际上是在浪费数据库和计算机的性能。

无论如何,你仍然想要这样做。然后你可以尝试左右关节或右关节。你可以使用一些外键来连接这两个表,然后你可以做你想做的事情。