ORACLE機能 ORACLE関数

[ORACLE関数] グループ単位で順位を飛ばして順位を付ける(RANK~PARTITION BY)

投稿日:2018年11月16日 更新日:

検索結果をグループ単位で順位を飛ばして順位を付けるには、RANK~PARTITION BY句を使用します。

順位を飛ばしてとは、同値が存在した場合次の順位は連番にならないという事です。

サンプル

例)M_USER表からSCORE列の降順で順位を付ける

【m_user】
NAMESCORE
Aさん60
Bさん70
Cさん80
Dさん70
Eさん50

検索結果

SQL*Plus
RANKING NAME SCORE -------- --------- -------- 1 Cさん 80 2 Bさん 70 2 Dさん 70 4 Aさん 60 5 Eさん 50

2位が2件あるので次の順位は4位となり、3位は空き番となります。

備考


スポンサーリンク

スポンサーリンク

-ORACLE機能, ORACLE関数
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ORACLE

[ORACLE] ユーザを作成・変更・削除する

ユーザを作成・変更・削除するサンプルです。 ユーザを作成する ユーザを作成するには、CREATE USER句を使用します ...
ORACLE

[PL/SQL] ストアドを再コンパイルする

パッケージやプロシージャを再コンパイルするには、 ALTER PROCEDURE文 / ALTER PACKAGE文を使 ...
ORACLE

[SQL] 集計した件数でソートする

集計した件数でソートするには、ORDER BY句にCOUNT関数を記述すればOKです。 サンプル 以下テーブルをサンプル ...
ORACLE

[データディクショナリ] インデックスの情報を取得する

INDEX(索引)の情報を参照するには、 INDEXESデータディクショナリビューを参照します。 INDEXESデータデ ...
ORACLE

[ORACLE] INDEXを作成する

INDEX(索引)を作成するには、CREATE INDEX句を使用します。 構文 (通常インデックスを作成する) CRE ...

スポンサーリンク