Skip to main content

RANK() (SQL)

同じウィンドウ・フレーム内の各行に 1 から始まるランクを割り当てるウィンドウ関数。

構文

RANK()

説明

RANK は、各行に 1 から始まるランク (整数) を割り当てます。これらのランクは、ORDER BY 式で指定された値によって決まります。例えば、同じ値を持つすべての行には同じランクが与えられます。ただし、DENSE_RANK() とは異なり、RANK() は複数の行が同じランクを共有する場合、連続する番号をスキップします。2 つの行がどちらもランク 1 の場合、割り当てられる次のランクは 3 となります。

ウィンドウ関数フィールドに同じ値を含む行が複数ある場合は、これらのランクに重複値を含めることができます。

以下の例では、各部門内での給与に基づいて、各従業員にランクが割り当てられます。

SELECT RANK() OVER (PARTITION BY Department ORDER BY Salary) FROM Company.Employee

関連項目

FeedbackOpens in a new tab