我在尝试对两个不同表中的由普通用户ID分组的字段求和时遇到麻烦。
为了给您更多的信息...我正在尝试按日期跟踪玩家的表现(即:11月14日全场得分最高)。数据库是分开的,一个用于常规赛的表和一个用于季后赛的表。例如,某位玩家可能在2001年5月3日参加了常规赛比赛,但是在2005年5月3日进行了季后赛比赛。
因此,我正在尝试使用所有日期的每个玩家的总和来构建视图。
我对一张桌子有什么:
SELECT PlayerId,sum(Points) as TOT_PTS
FROM RS_games
WHERE DAY(Date)=$cur_day
AND MONTH(Date)=$cur_month
GROUP BY PlayerId
...但是我不知道如何在不创建第三个视图作为“垫脚石”的情况下,将两个表中每个玩家的值相加。有任何想法吗?
如果要在(DAY-MONTH)之前得到结果,可以执行以下操作:
SELECT playerID,
CONCAT (DAY(DATE), '-', MONTH(DATE)) AS DAY_MONTH,
SUM(points) AS Total_Points
FROM (
SELECT playerID, DATE, points
FROM rs_games
UNION ALL
SELECT playerID, DATE, points
FROM po_games
) a
GROUP BY 1, 2
这样,您最终将获得每个playerId,dd-mm的结果,以及这些年中该天的得分总和。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句