16.20 - TOP n行オプションの使用 - 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-1146-162K-JPN
Language
日本語 (日本)

TOP nはSELECT文のオプションで、問合わせの出力を特定の行数に自動的に制限します。このオプションを使用すると、テーブル全体をスキャンせずにテーブルのデータの小規模なサンプルを迅速に取得できます。例えば、Ordersテーブルのうち10行だけを出力して、テーブルのデータを確認することができます。

nの値は、マクロ、ストアド プロシージャ、またはUSINGリクエスト修飾子パラメータを使ってオペレータに渡すことができます。

パフォーマンスの最適化

TOP nオプションは、TOP nおよび「あらゆるN」リクエストの処理に対して最適化されています。次のような最適化があります。
  • TOP n PERCENT操作に関してAMP実行時の最適化を追加
  • 「あらゆるn」の最適化をINSERT ... SELECTおよびCREATE TABLE ... ASリクエスト、ビュー、nのすべての値の派生テーブルに拡張
  • window関数のグループ列にソース リレーションのPIが含まれている場合、ハッシュ パーティション ケースで列の再配布を避ける最適化を追加
  • WITH TIESオプションを指定しない、TOP n操作のRankLimit最適化を追加
  • ORDER BY指定を指定するリクエストのTOP nに関する実行時の最適化を追加

TOP nオプションのパフォーマンスに関する考慮事項

最高のパフォーマンスを得るには、RANKまたはROW_NUMBERを指定したQUALIFY句の代わりにTOP nオプションを使用します。
  • 最適の場合、TOP nオプションではパフォーマンスが向上します。
  • 不適切な場合、TOP nオプションではパフォーマンスが変わりません。

TOP nオプションを使用したSELECT文で、ORDER BY句も指定しない場合、FastExportよりもBTEQを使用した方がSELECT文のパフォーマンスは向上します。