如何在对行进行分页时检索列总数?

时间:2010-12-25 06:38:59

标签: php mysql pagination

我在表格中有一个“价格”列,我使用分页脚本生成显示的数据。现在分页工作正常但是我想在我的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";

4 个答案:

答案 0 :(得分:2)

答案 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; 
?>

希望这有帮助。