我使用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以帮助引导我朝正确的方向发展?
答案 0 :(得分:1)
您需要添加
GROUP BY member_id
到查询结尾以获得每人一行。否则,像SUM()
这样的聚合函数会合并结果中的所有行。