MySQL sum和Group By,数据标识信息在第二个表中

MySQL sum和Group By,数据标识信息在第二个表中,mysql,group-by,sum,Mysql,Group By,Sum,我有一个商店类型的数据库,我需要运行一个报告,其中我汇总了一个客户的所有购买 由于该数据库对于存储的特殊需要,userId存储在两个部分:compID和userId。例如,一个用户的ID可能为“ABCD”,其中“AB”表示他们工作的公司,“CD”是他们的特定ID,但它仍然引用了这样一个事实,即它与“AB”匹配,使其成为任何其他“CD”用户值的唯一值。(我知道这是一种奇怪的方式,但需要的是尽可能少的用户ID,同时仍然有最多的可用插槽。) 无论如何,我的问题是,当我试图编写一个查询来汇总一个用户的购

我有一个商店类型的数据库,我需要运行一个报告,其中我汇总了一个客户的所有购买

由于该数据库对于存储的特殊需要,userId存储在两个部分:compID和userId。例如,一个用户的ID可能为“ABCD”,其中“AB”表示他们工作的公司,“CD”是他们的特定ID,但它仍然引用了这样一个事实,即它与“AB”匹配,使其成为任何其他“CD”用户值的唯一值。(我知道这是一种奇怪的方式,但需要的是尽可能少的用户ID,同时仍然有最多的可用插槽。)

无论如何,我的问题是,当我试图编写一个查询来汇总一个用户的购买量时,我找不到从第二个表(如该用户的姓名)中获取额外信息的方法

这是五月的桌子

f_purchases表使用用户ID(及其compID)和购买值等数据存储每笔销售

f_用户表包含有关用户的详细信息,如用户ID、compID、姓名、联系人等

当我仅选择原始数据时,此查询工作:

SELECT f_purchases.compID, f_purchases.userID, sum(f_purchases.amount) as Total FROM f_purchases GROUP BY f_purchases.compID, f_purchases.userID
但当我尝试使用联接或多表查询时,我找不到从f_用户引入标识信息(如名称)的方法。我想如果我有类似的东西,我就可以得到f_user.name

WHERE f_purchases.compID=f_user.compID AND f_purchases.userID=f_user.userID

我的另一个想法是,我可以以某种方式使用连接来连接ID的两个部分,但我不知道从哪里开始。非常感谢您的帮助。

我想我以前有点不对劲,但再试一次后,现在一切都正确了。以下是有效的方法:

SELECT f_user.first, f_purchases.compID, f_purchases.userID, sum( f_purchases.amount ) AS Total
FROM f_purchases, f_user
WHERE f_purchases.compID = f_user.compID
AND f_purchases.userID = f_user.userID
GROUP BY f_purchases.compID, f_purchases.userID

对于最初的帖子,很抱歉。

那么,当您在何处添加该内容时,您会得到什么clause@Melanie我去重新运行它,我不知道我以前做错了什么,但现在它起作用了。对于最初的问题,我很抱歉。