Sybase IQ 12.7 Benutzerhandbuch

Seite von 212
その他の
 OLAP の例 
96
 
Sybase IQ
例:
 ROW のデフォルトのウィンドウ・フレーム
このクエリは、
ROW のデフォルトのウィンドウ・フレームの例を示しています。
SELECT prod_id, month_num, sales, SUM(sales) OVER
(PARTITION BY prod_id ORDER BY month_num RANGE
BETWEEN 1 FOLLOWING AND 3 FOLLOWING) 
FROM sale 
ORDER BY prod_id, month_num;
このクエリの結果セットを次に示します。
prod_id
month_num
sales
sum(sales)
-------
---------
-----
----------
10
1
100
350
10
1
150
350
10
2
120
381
10
3
100
391
10
4
130
261
10
5
120
110
10
5
31
110
10
6
110
(NULL)
20
1
20
85
20
2
30
86
20
3
25
81
20
4
30
51
20
5
31
20
20
6
20
(NULL)
30
1
10
25
30
2
11
 14
30
3
12
2
30
4
1
NULL)
30
4
1
(NULL)
例:
 UNBOUNDED PRECEDING  UNBOUNDED FOLLOWING
この例では、パーティション内のすべてのローがウィンドウ・フレームに含ま
れます。このクエリは、パーティション全体
 ( 各月に重複ローは含まれていま
せん
) における売上の最大値を計算します。
SELECT prod_id, month_num, sales, SUM(sales) OVER
(PARTITION BY prod_id ORDER BY month_num ROWS
BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)
FROM sale WHERE rep_id = 1 
ORDER BY prod_id, month_num;
このクエリの結果セットを次に示します。
prod_id
month_num
sales
max(sales)
-------
---------
-----
----------
10
1
100
680
10
2
120
680
10
3
100
680
10
4
130
680