始める無料で始める

CASE WHEN を使った条件付き集計

CASE 式を使うと、制約条件を加えられます。さらに、SUM() などの集約関数の中にこの CASE 式を記述すると、計算に条件を適用できます。

この練習では、特定のチーム(Real Sociedad)のデータに絞り込み、シーズンごとのホームゴールとアウェイゴールの合計を計算しましょう。

この演習はコースの一部です

SQL のデータ操作

コースを見る

演習の手順

  • hometeam_id8560 の場合の、ホーム得点の合計を計算する CASE 式を作成してください。
  • awayteam_id8560 の場合の、アウェイ得点の合計を計算する 2 番目の CASE 式を作成し、列に away_goals というエイリアスを付けてください。
  • クエリを season でグループ化してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

SELECT season,
	-- SUM the home goals
    ___(___ ___ hometeam_id = 8560 THEN ___ END) AS home_goals,
    -- SUM the away goals
    ___
FROM match
-- Group the results by season
___
コードを編集して実行