17.10 - RANK関数の構文(ANSI) - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL関数、式、および述部

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1145-171K-JPN
Language
日本語 (日本)
RANK() OVER (
  [ PARTITION BY column_reference [,...] ]
  ORDER BY value_spec [,...]
  [ RESET WHEN condition ]
  [ WITH TIES { LOW | HIGH | AVG | DENSE } ]
)

構文要素

OVER
累計、グループ、または移動関数を計算する際に、値をグループ化、順序付け、および処理対象とする方法を指定します。
値は、PARTITION BY句BEGINおよびRESET WHEN句ENDに基づいてグループ化され、ORDER BY句に基づいてソートされ、パーティション内の集約グループに基づいて処理の対象とされます。
PARTITION BY column_reference [,...]
関数が操作対象とするグループ。
PARTITION BY句またはRESET WHEN句を指定しない場合は、FROM句から送られる結果セット全体がパーティションになります。
PARTITION BY句は、ウィンドウ パーティション句と呼ばれることもあります。
ORDER BY
グループまたはパーティション内の値がソートされる順序。
value_spec
value_expression [ ASC | DESC ] [ NULLS { FIRST | LAST } ]
RESET WHEN
関数の実行対象になる1つまたは複数のグループ。指定された条件の評価に応じて変化します。条件がTRUEと評価されると、指定されたウィンドウ パーティション内に新しい動的パーティションが作成されます。
PARTITION BY句またはRESET WHEN句を指定しない場合は、FROM句から送られる結果セット全体がパーティションになります。
condition
条件によるパーティション化を決めるために使用する条件式。RESET WHEN句の条件は、QUALIFY句の条件と適用範囲は同じですが、ネストされた順序付き分析関数はRESET WHEN句を指定できないという追加の制約があります。また、条件内のsubqueryとしてのSELECTは指定できません。
条件は、指定されたすべてのウィンドウ パーティション内の行に適用され、そのウィンドウ パーティション内にサブパーティションを作成します。
詳細については、<Teradata Vantage™ - SQLデータ操作言語、B035-1146>の「RESET WHEN条件のルール」と「QUALIFY句」を参照してください。
WITH TIES
すべての同順位のランクを指定します。
オプション 説明
LOW すべての同順位が最も低い順位になります。整数データ型を返します。
HIGH すべての同順位が最も高い順位になります。整数データ型を返します。
AVG すべての同順位が平均の順位になります。DECIMALデータ型を返します。
DENSE すべての同順位がDENSE_RANKの順位付けに従って並べられます。整数データ型を返します。
ASC
昇順のソート順序。
DESC
降順のソート順序。
NULLS FIRST
NULL結果が最初にリストされることを指定します。
NULLS LAST
NULL結果が最後にリストされることを指定します。