我一直在研究 SQLzoo 问题,但在 JOIN 教程问题 #13 中的最后一个问题 - 列出每场比赛以及每支球队的进球数,如图所示。
链接:http ://sqlzoo.net/wiki/The_JOIN_operation
在他们提供的示例代码中,它使用了一个案例。我这样修改它:
SELECT game.mdate, game.team1,
CASE WHEN goal.teamid=game.team1 THEN 1 ELSE 0 END score1, game.team2,
CASE WHEN goal.teamid=game.team2 THEN 1 ELSE 0 END score2
FROM game, goal WHERE game.id=goal.matchid
GROUP BY game.mdate, goal.matchid, game.team1, game.team2
他们建议在 score1/score2 上使用 SUM 函数将提供答案。我对如何在 SQL 中创建的这 2 列上使用 SUM 函数感到困惑。
任何人都可以提供有关如何做的提示,或从广义上提及如何以更好的方式编写此 SQL 查询吗?