我在表格中有一个“价格”列,我使用分页脚本生成显示的数据。现在分页工作正常但是我想在我的HTML表格中有一个最后一行来显示所有价格的总和。所以我写了一个脚本来做一个foreach循环,它有点工作,它确实给了我总和所有的总和,但它是所有行的总和,甚至是后面几页的那些。如何只检索分页中显示的行的总和?
这是查询..
SELECT
purchase_log.id,
purchase_log.date_purchased,
purchase_log.total_cost,
purchase_log.payment_status,
cart_contents.product_name,
members.first_name, members.last_name,
members.email FROM purchase_log LEFT
JOIN cart_contents ON purchase_log.id
= cart_contents.purchase_id LEFT JOIN members ON purchase_log.member_id =
members.id GROUP BY `id` ORDER BY `id` DESC LIMIT 0,30";
答案 0 :(得分:2)
只使用MySQL函数 FOUND_ROWS():http://dev.mysql.com/doc/refman/5.0/en/information-functions.html#function_found-rows
答案 1 :(得分:0)
您需要将LIMIT 0,20附加到mysql查询中,这只会将当前分页显示结果的总和加起来。
我假设您使用LIMIT来对结果进行页面化,除非您将数据排列到网格中,在这种情况下您需要发布代码。
答案 2 :(得分:0)
在mySQL查询中使用mysql SUM函数怎么样? http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_sum
答案 3 :(得分:0)
首先,您需要将total初始化为零,以便它可以显示您使用limit获取的记录的总和。
<?php
$total = 0;
foreach ($purchase as $items) :
$total += $items['purchase_log.total_cost'];
endforeach;
?>
希望这有帮助。