Php 循环内求和-MYSQL
我有那些桌子: 表格Php 循环内求和-MYSQL,php,mysql,Php,Mysql,我有那些桌子: 表格所有交易 表格alladdon\u列表 我只想通过guest\u id对所有具有特定transac\u id和group的插件进行简单的求和即可得到如下结果: 但是使用我的查询: <table border=1 cellpadding=5 > <tr> <th>Names</th> <th>Amount</th> </tr> <?p
所有交易
表格alladdon\u列表
我只想通过guest\u id
对所有具有特定transac\u id
和group
的插件进行简单的求和
即可得到如下结果:
但是使用我的查询
:
<table border=1 cellpadding=5 >
<tr>
<th>Names</th>
<th>Amount</th>
</tr>
<?php
include("conn_archive.php");
$cfaddontotal = 0;
$getall = mysql_query("SELECT *, sum(quantity) as quantity,price
FROM alltransactions at, alladdon_list aal
WHERE at.transac_id=aal.aatransac_id
GROUP BY guest_id
", $db2);
while($rows = mysql_fetch_assoc($getall)){
// GUEST INFO
$guest_fname = $rows['guest_fname'];
$guest_lname = $rows['guest_lname'];
// ADDON INFO
$addondesc = $rows['description'];
$addondate = $rows['datef'];
$addonqty = $rows['quantity'];
$addonprice = $rows['price'];
$addontcost = $addonprice * $addonqty; // cost of specific product
$cfaddontotal += $addonprice * $addonqty; // total cost of all products
echo "<tr>";
echo "<td>$guest_fname $guest_lname</td>";
echo "<td>₱ ".number_format($addontcost)."</td>";
echo "</tr>";
}
?>
<tr>
<th colspan=2 >Total Addon Cost: ₱ <?php echo number_format($cfaddontotal); ?></th>
</tr>
</table>
名字
数量
总附加成本:₱;
我得到了这个(这是错误的):
无法确定使用什么
查询
来获得准确的计算结果。您的代码令人困惑。您正在将所有产品(具有不同价格)的数量相加,然后乘以一个“随机”价格(如果使用group by
进行选择时不包含没有聚合函数的字段,则最好是:)
最好将查询更改为其他内容
SELECT *, sum(quantity*price) as total
FROM alltransactions at, alladdon_list aal
WHERE at.transac_id=aal.aatransac_id
GROUP BY guest_id
哦这么简单?我想不出来。谢谢有效:)