メニュー別売上ランキングを作る

上級
ウィンドウ関数

メニュー別売上ランキングを作る

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

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

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

ログインして解く

問題文

人気メニューを一覧化するため、CTEでメニュー別売上を集計し、売上の高い順にRANKを付けてください。

結合のヒント

  • resto_menusテーブル(エイリアス: m)との結合条件: o.menu_id = m.id(resto_orders.menu_id = resto_menus.id)
  • resto_menusテーブル(エイリアス: m)との結合条件: ms.menu_id = m.id(ms.menu_id = resto_menus.id)

取得列: o.menu_id, SUM(m.price * o.quantity) AS total_sales

この問題で学べること

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

使用テーブル

resto_ordersresto_menus

難易度・対象者

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

関連問題


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

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

ログインして解く
QSQL Quest