概要:このチュートリアルでは、OracleRANK()
関数を使用して、行セット内の行のランクを計算す
Oracle RANK()関数の概要
RANK()
関数は、値のセット内の値のランクを計算する分析関数です。
RANK()
関数は、同じ値を持つ行に対して同じランクを返します。 これは、次のランクを計算するために、タイランクにタイランクの数を追加します。, そのため、位あたりすることができる。
RANK()
関数は、top-Nおよびbottom-Nクエリに便利です。
以下は、RANK()
関数の構文を示しています。
order_by_clause
は必須です。 これは、RANK()
関数が適用される各パーティションの行の順序を指定します。
query partition句があれば、行をRANK()
関数が適用されるパーティションに分割します。, クエリパーティションの原因が省略された場合、結果セット全体が単一のパーティションとして扱われます。,テーブル名rank_demo
一つの列で構成されています:
第二に、rank_demo
テーブル:
第三に、rank_demo
テーブル:
iv id=”a88ec99c41″
第四に、RANK()
関数を使用して、rank_demo
テーブルの各行のランクを計算します。
次の出力を示します。
最初の二つの行は同じランク1を受け取りました。, 3番目の行はすでにランク1を受け取っていたので、第三の行はランクを得ました。 次の三つの行は同じランク4を受け、最後の行はランク7を得ました。
Oracle RANK()関数の例
デモ用に、サンプル-データベースのproducts
テーブルを使用します。,
Oracle RANK()関数の簡単な例
次のステートメントは、各製品のランクを定価で計算します。
部分出力は次のとおりです。
最も高価な製品を取得するには、次のステートメントを使用します。
この例では、共通テーブル式は、ランクの製品を返し、外側のクエリは、最も高価な最初の10,
出力は次のとおりです。
ORACLE RANK()関数をPARTITION BY exampleで使用する
次の例では、カテゴリごとに上位3つの最も高価な製品を返します。
この例では、
- 最初の例では、
- 最初の例では、
- 最初の例では、次の例では、
- 最初の例では、次の例では、
- 最初の例では、次の例では、次の例では、次のようになります。、
PARTITION BY
句は、カテゴリ別に複数のパーティションに製品を分割しました。 - 次に、
ORDER BY
句は、各パーティションの行をリスト価格で降順にソートしました。, - 最後に、
RANK()
関数は、各パーティション内の各行のランクを計算しました。 各パーティションのランクを再初期化しました。
以下は出力を示しています。
このチュートリアルでは、Oracle
RANK()
関数を使用して、値のセット内の値のランクを計算する方法を学習しました。p>- このチュートリアルは役に立ちましたか?
- イェスノ
- 最初の例では、次の例では、次の例では、次のようになります。、
- 最初の例では、次の例では、
- 最初の例では、次の例では、
- 最初の例では、
Leave a Reply