キャプテンであり、ペナルティに対して合計£80以上を支払ったプレーヤーのペナルティで支払われたプレーヤー番号と合計金額を取得するSQLクエリを作成する必要がある割り当てがあります。
私は3つのテーブルを持っています
プレーヤー(playerNo、名前、イニシャル、通り、町、郵便番号)
チーム(teamNo、playerNo、division)
ペナルティ(paymentNo、playerNo、penDate、amount)
太字のテキストは主キーを示します。チームテーブルのplayerNoは、チームキャプテンを示します。
3つのテーブルを結合する方法がわかりません。しかし、これに対する私の試みは次のとおりです。
SELECT p1.playerNo, SUM(p2.amount)
FROM Players p1 INNER JOIN Teams t
ON p1.playerNo = t.playerNo
JOIN penalties p2
ON p2.playerNo = p1.playerNo
GROUP BY playerNo
HAVING SUM(p2.amount) > 80;
これは正しいですか?