QUALIFY句の使用 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/djk1612415574830.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1145
Product Category
Software
Teradata Vantage

行数を減らすには、新しい列値に条件を適用します。 QUALIFY句は集約関数のHAVING句に類似しています。 QUALIFY句は、関数値に基づいて行数を減らし、対象となっている各行について1つの新しい値を戻します。 例えば、

   SELECT StoreID, SUM(profit) OVER (PARTITION BY StoreID)
   FROM facts
   QUALIFY SUM(profit) OVER (PARTITION BY StoreID) > 2;

順序付き分析関数と集約関数の両方を指定したSQL問合わせには、以下の例のように、QUALIFY句とHAVING句を両方とも組み込むことができます。

   SELECT StoreID, SUM(sale), 
   SUM(profit) OVER (PARTITION BY StoreID)
   FROM facts
   GROUP BY StoreID, sale, profit
   HAVING SUM(sale) > 15
   QUALIFY SUM(profit) OVER (PARTITION BY StoreID) > 2;