第 4 章 OLAP の使用
ローベースのウィンドウ・フレーム 図
ティションを表しています。それぞれのローは、OLAP のウィンドウ・フレー ムが前にスライドするにつれて現在のローになります。このウィンドウ・フ レームは Between Current Row And 2 Following として定義されているため、各 フレームには、最大で 3 つ、最小で 1 つのローが含まれます。フレームがパー ティションの終わりに到達したときは、現在のローだけがフレームに含まれま す。網掛けの部分は、図
図
図 4-4 のウィンドウ・フレームは、次のような規則で機能しています。
•ロー [1] が現在のローであるときは、ロー [4] および [5] が除外される。
•ロー [2] が現在のローであるときは、ロー [5] および [1] が除外される。
•ロー [3] が現在のローであるときは、ロー [1] および [2] が除外される。
•ロー [4] が現在のローであるときは、ロー [1]、[2]、[3] が除外される。
•ロー [5] が現在のローであるときは、ロー [1]、[2]、[3]、[4] が除外される。
次の図では、この規則を具体的な値セットに適用し、OLAP の AVG 関数を使 用して各ローの計算を行っています。スライド計算により、現在のローの位置 に応じて、3 つまたはそれ以下のローを範囲として移動平均を算出しています。
次のクエリは、移動ウィンドウの定義の例を示しています。
SELECT dimension, measure,
AVG(measure) OVER(partition BY dimension
ORDER BY measure
ROWS BETWEEN CURRENT ROW and 2 FOLLOWING)
AS olap_avg
FROM ...
パフォーマンス&チューニング・ガイド | 69 |