私は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 クエリをより適切な方法で作成する方法を大まかに説明する方法や言及する方法について、誰かがヒントを提供できますか?