基于不同表和sum()的表列中的MySQL SELECT值

时间:2016-07-05 15:53:14

标签: mysql

我有两个表设置如下:

> events
-----------------------------------
id | event | eventHandle | points
-----------------------------------
1 | Event One | eventOne | 5
2 | Event Two | eventTwo | 10


> entries
-----------------------------------
id | user | eventHandle
-----------------------------------
1 | 1 | eventOne
2 | 1 | eventTwo
3 | 1 | eventTwo
5 | 5 | eventOne

我需要做的是获得每个用户获得的与每个事件相关的“积分”数量。

例如,用户1得到25分,用户5得到5分。

我无法弄清楚的是如何获得积分,基于eventHandle并将它们加在一起。

我设法从不同的表中选择不同的数据,并使用不同的查询进行基本求和,但不进行组合。令人难以置信。

任何帮助都非常感谢!

1 个答案:

答案 0 :(得分:1)

您需要做的只是在eventHandle字段的2个表和用户的汇总点之间的简单inner join

select en.user, sum(ev.points)
from events ev
inner join entries en on ev.eventHandle=en.eventHandle
group by en.user