0

我正在使用 Invision Power Board 套件进行购买,但它们没有提供获取客户支付总额的方法。所以我试图为这些信息编写一个 SQL 查询。我对 SQL 的了解非常有限,所以……我可能采取了错误的方法。

从我收集到的信息来看,我需要的信息在两个表上,但是它输出的方式对我没有用,因为它输出每个单独的购买,只有会员的唯一 ID(在批量操作和检查中相对没用)

到目前为止,我已经走到了这一步……

SELECT member_id, email, name, 
SUM(ibf_nexus_invoices.i_total) as SUM_TOTAL
FROM ibf_members
RIGHT JOIN ibf_nexus_invoices ON ibf_members.member_id = ibf_nexus_invoices.i_member
WHERE ibf_nexus_invoices.I_status = "paid";

这从成员表和发票表中获取所有内容,并像这样输出它..

------------------------------------------------------------
member_id      |    email         | name      | SUM_TOTAL  |
------------------------------------------------------------
    4          | email@domain.com | "Derek"   | 184.22     |
------------------------------------------------------------

乍一看,这看起来像我想要的。但它只返回一个人,而不是成员列表中的所有人。有没有人足够精通 SQL 来帮助引导我朝着正确的方向前进?

4

1 回答 1

1

您需要添加

GROUP BY member_id

到查询的末尾以获取每人一行。否则,聚合函数,如SUM()合并结果中的所有行。

于 2013-10-03T22:25:29.800 回答