部署別の平均給与と全社平均の差を求める

上級
CTE基本

部署別の平均給与と全社平均の差を求める

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

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

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

ログインして解く

問題文

CTEで部署別平均給与と全社平均給与を求め、両者の差(dept_avg - company_avg)を部署名とともに表示してください。

結合のヒント

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

取得列: e.department_id, AVG(s.base_salary) AS avg_sal

この問題で学べること

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

使用テーブル

departmentsemployeessalaries

難易度・対象者

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

関連問題


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

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

ログインして解く
QSQL Quest