部署ごとの給与合計と人数をまとめる

上級
JOIN + 集計

部署ごとの給与合計と人数をまとめる

ウィンドウ関数やサブクエリなど、複雑なSQL構文をマスターする上級問題です。

ブラウザ上でSQLを書いて解いてみましょう

ログインして挑戦できます

ログインして解く

問題文

3テーブル(departments・employees・salaries)を結合し、部署ごとの人数・給与合計・平均給与を求めてください。

結合のヒント

  • employeesテーブル(エイリアス: e)との結合条件: d.id = e.department_id(departments.id = employees.department_id)
  • salariesテーブル(エイリアス: s)との結合条件: e.id = s.employee_id(employees.id = salaries.employee_id)

取得列: d.name AS department_name, COUNT(e.id) AS headcount, SUM(s.base_salary) AS total_salary, AVG(s.base_salary) AS avg_salary

この問題で学べること

  • JOIN + 集計 の構文・考え方
  • 上級レベルのSQLクエリの書き方
  • ブラウザ上でSQLを実行して即座に結果を確認する練習

使用テーブル

departmentsemployeessalaries

難易度・対象者

難易度上級
カテゴリJOIN + 集計
対象者ウィンドウ関数やサブクエリなど、複雑なSQL構文をマスターする上級問題です。

関連問題


実際にSQLを書いて理解を深めましょう

ブラウザ上で実行できる採点付きSQLエディタで練習できます

ログインして解く
QSQL Quest