自部門の平均より高い給料の社員(CTE)

上級

問題文

問題

employees テーブルから、自分が所属する部門の平均給料よりも、自分の給料(salary)が高い社員を、給料の高い順に出力してください。 (比較の基準は「全社員の平均」ではなく、「その社員自身の部門の平均」です。)

出力する列は次の3つ、この順序・この列名で出してください:

列名内容
name社員名
dept部門
salary給料
ヒントを見る

まず WITH 句(CTE)で「部門ごとの平均給料」を作っておくと考えやすくなります。 そのCTEを employees に部門で結合し、salary > 部門平均 で絞ります。

スキーマ

使用データベース:PostgreSQL 16
employees10
idnamedeptsalaryhire_year
1AliceSales5002019
2BobDev6002020
3CarolDev5502021
4DaveDev7202018
5ErinSales4802022
6FrankDev6402020
7GraceHR5302019
8HeidiHR6102017
9IvanSales7002021
10JudyHR4702023

SQL

⌘⏎ / Ctrl+Enter で実行
エディタを読み込み中…

「実行」を押すと、ここにSQLの実行結果が表示されます。