php - 我想计算不同表的总和

标签 php mysql

This data comes from different tables我想计算不同表的总和。我是 PHP 新手请帮助我。 下面我附上了屏幕截图,所有值都来自数据库。

<table class="table table-bordered" id="sum_table">
    <tr>
    <th style="background-color: #ff7f7f">Items:</th>
    <td style="background-color: #44768e">Amount</td>
    </tr>
        <th>Total</th>
<td><?php

$qry = mysqli_query ("
SELECT sum(Price) 
  FROM rice 
 WHERE date BETWEEN DATE_FORMAT(NOW() - INTERVAL 1 MONTH, '%Y-%m-01') AND DATE_FORMAT(NOW() ,'%Y-%m-01')
");
$row2 = mysqli_fetch_assoc($qry);
echo $row2['total'];


$qry = mysqli_query ("
SELECT sum(Price) 
  FROM egg 
 WHERE date BETWEEN DATE_FORMAT(NOW() - INTERVAL 1 MONTH, '%Y-%m-01') AND DATE_FORMAT(NOW() 
,'%Y-%m-01')
");
$row = mysqli_fetch_assoc($qry);
echo $row['total'];

$total = $row['total'] + $row2['total'];
echo $total;

?></td>
</tr>

</table>

最佳答案

您的代码中有 2 个问题:

问题 1: mysqli_query()需要 2 个参数,您没有在 mysqli_query() 中使用连接变量

问题2:如果你想像$row['total'] + $row2['total'];那样求和,那么你必须需要定义别名在您的查询中类似:

SELECT SUM(column) as total FROM tablename

最好使用PHP error reporting在本地环境中,这将帮助您检查实际错误而不是空白页。

示例:

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

编辑:

这是 @spencer7593 在评论中强调的好点,您直接计算这两个值,假设如果您的查询不返回任何内容,那么您将收到新的错误。

关于php - 我想计算不同表的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56991290/

相关文章:

php - Codeigniter 迁移 mysql 到 mysqli 连接错误

php - 无法连接到网站中的数据库

javascript - 如何将范围传递给 node-mysql 中的回调?

mysql - 错误 1215 : Can't add foreign key constraint (InnoDB)

python - 如何在web.py/python中检查sql查询结果是否为空

php - undefined variable $submit

PHP Excel - 您尝试打开的文件 .xls 的格式与文件扩展名指定的格式不同

php - 使用fpdf修改php中已有的pdf

php - 更新脚本随机停止

php - 如何使用 PHP 中的独立文本框更新多个已检查记录