16.20 - TOP - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ定義言語 構文規則および例

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-162K-JPN
Language
日本語 (日本)

上位行をSELECT操作から返します。

ビュー定義で以下のいずれかも指定する場合は、TOP n演算子を指定できません。

  • DISTINCT演算子
  • SAMPLE句
  • QUALIFY句
  • Subquery、つまり、ビュー定義内のsubqueryにTOP演算子を含めることはできません。

TOP演算子を指定するビューは更新できません。

ORDER BY句をTOP演算子と共に指定することもできます。それ以外の場合、ORDER BY句はビュー定義では無効です。

ORDER BY句のソート式にはBLOB、CLOB、UDT、Period型またはGeospatial型を持つ列、または順序付き分析関数を含めることができません。

TOPは、同様に使用できるQUALIFY RANK()やQUALIFY ROW_NUMBER()などの順序付き分析関数と同じように、あるいはそれ以上に優れた動作をします。

n
SELECT操作から返す行数のDECIMALまたはINTEGER値。
ORDER BY句を指定するかどうかによって、DML要求で定義できるTOP n句よりも制限が大きくなる点に留意してください。ORDER BY句を指定しない場合、TOP n句は、TOP nではなく、any n基本テーブルの行のみを返すように指定します。
m PERCENT
SELECT操作からmパーセントの行のみが返されます。mはDECIMAL値またはINTEGER値のいずれかになります。
(m*COUNT(*)/100.0)の評価が整数値にならない場合、概数が計算され、次に大きい整数値になります。
例えば、( m *COUNT(*)/100.0)の評価が0.1の場合、概数の1になります。
( m *COUNT(*)/100.0)の評価が9.2の場合、概数の10になります。
Teradata Databaseがこの概数化を適用するのは、小数点以下15桁までです。例えば、( m *COUNT(*)/100.0)の評価が0.0000000000000001の場合、1に概算化されません。