17.05 - WHERE、GROUP BY、およびQUALIFY句の評価の順序 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Release Date
2021年1月
Content Type
プログラミング リファレンス
Publication ID
B035-1146-175K-JPN
Language
日本語 (日本)
WHERE、GROUP BY、およびQUALIFY句がSELECT文で一緒に使用された場合、次の順序で評価されます。
  1. WHERE句
  2. GROUP BY句
  3. QUALIFY句
詳細な手順は次のとおりです。
  1. データベースは、FROM句テーブル上のWHERE句条件を評価します。
  2. 結果の行が、GROUP BY列を使用してグループ化されます。
  3. データベースは、グループ化テーブル上の順序付き分析関数を評価します。
  4. QUALIFY句が、結果セットに適用されます。

QUALIFY句の選択リストと検索条件の両方で呼び出されるVantage固有の関数(CSUMおよびMAVGなど)は、行の除去をいっさい行なわずに、グループ化された行に対して計算されます。そして、QUALIFY句の検索条件が適用されます。

ウィンドウ関数(SUMおよびAVGなど)の場合、GROUP BYは単一の行にあるgroup-by列に同じ値を持つすべての行を縮小します。