問題一覧に戻る
上級関数
問題64: ROW_NUMBER - 行番号付与
結果セットに連番を付与するウィンドウ関数を学習します。順位付けやページング処理、トップN分析などで活用されます。同じ値でも異なる番号が割り当てられます。
-- 価格の高い順に行番号を付与
SELECT
-- 連続した番号を割り当て
() OVER (ORDER BY price DESC) AS rank_num,
product_name,
price
FROM products;
-- カテゴリごとに行番号を付与
SELECT
-- カテゴリ別に番号をリセット
() (PARTITION BY category ORDER BY price DESC) AS category_rank,
category,
product_name,
price
FROM products;