行数を減らすには、新しい列値に条件を適用します。 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;