始める無料で始める

大学ごとの所属数の集計

データの準備が整ったので、データベースに対してSQL クエリを実行してみましょう。ここでは、列によるグループ化やテーブルの結合など、すでに学んだ概念を活用します。

この演習では、最も多くの所属(アフィリエーション)を持つ大学を「教授」を通じて特定します。後者が university_id を含むため、affiliations テーブルと professors テーブルの両方が必要です。

復習として、結合の基本構文を確認しておきましょう。

SELECT table_a.column1, table_a.column2, table_b.column1, ... 
FROM table_a
JOIN table_b 
ON table_a.column = table_b.column

この構文により、 table_atable_b を組み合わせた、 table_a.columntable_b.column と一致する行のみの結果が得られます。

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

SQL リレーショナルデータベース入門

コースを見る

演習の手順

  • 大学ごとの所属数の合計を集計してください。
  • その集計結果を降順で並び替えてください。

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

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

-- Count the total number of affiliations per university
SELECT ___(*), professors.university_id 
FROM ___
JOIN ___
ON affiliations.professor_id = professors.id
-- Group by the university ids of professors
GROUP BY professors.___ 
___ ___ count DESC;
コードを編集して実行