仕入先ごとの発注総額ランキングをつける

上級
ウィンドウ関数

仕入先ごとの発注総額ランキングをつける

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

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

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

ログインして解く

問題文

仕入先名と発注総額を集計し、RANK()ウィンドウ関数で発注総額の降順ランキングを付けてください。

結合のヒント

  • vendorsテーブル(エイリアス: v)との結合条件: po.vendor_id = v.id(purchase_orders.vendor_id = vendors.id)

取得列: v.name, SUM(po.total_amount) AS total, RANK() OVER (ORDER BY SUM(po.total_amount) DESC) AS rank

この問題で学べること

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

使用テーブル

vendorspurchase_orders

難易度・対象者

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

関連問題


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

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

ログインして解く
QSQL Quest