は(各スポーツのためのプレーヤーの総数を保持するテーブルを作成し、sumPlayerそれを呼び出しますまたはあなたが好きなもの)。次に、sumPlayerを使用してテーブルを結合します。
CREATE TABLE sport(
sport_name varchar(10),
numberOfPlayers int
)
INSERT INTO sport (sport_name, numberOfPlayers)
VALUES ('soccer', 10),
('football', 5),
('football', 11),
('baseball', 6),
('Tennis', 8),
('soccer', 15)
SELECT sport.sport_name, sumPlayer.totalPlayer
FROM sport LEFT JOIN (
SELECT sport_name, SUM(numberOfPlayers) AS totalPlayer
FROM sport
GROUP BY sport_name) sumPlayer ON sumPlayer.sport_name = sport.sport_name
、結果は次のようになります。
sport_name numberOfPlayers
soccer 10
football 5
football 11
baseball 6
Tennis 8
soccer 5
あなたがGROUP BY
statementをチェックアウトする必要があり、この情報がお役に立てば幸いです。非常に一般的な意味で、(COUNT、MAX、MIN、SUM、AVG)などの集計関数を使用する場合は、GROUP BY
を最初に実行する必要があります。
提示してください:どのくらいあなたが得ていますか?何を試しましたか? – DaniDev
可能であれば、使用しているRDBMSに質問にタグを付けることができますか?それらの間には構文上の違いがあります。 – Turophile
あなたのお問い合わせはどこですか? – Eric