Sybase IQ 12.7 Benutzerhandbuch

Seite von 212
OLAP 関数の BNF 文法 
98
 
Sybase IQ
30
4
1
35
30
4
1
35
このクエリは、次のクエリと同じ意味になります。
SELECT prod_id, month_num, sales, SUM(sales) OVER
(PARTITION BY prod_id ORDER BY month_num RANGE
BETWEEEN UNBOUNDED PRECEDING AND CURRENT ROW) 
FROM sale 
ORDER BY prod_id, month_num;
OLAP 関数の BNF 文法
次の
 BNF (Backus-Naur Form ) 文法は、さまざまな ANSI SQL 統計関数に関す
る具体的な構文サポートの概要を示しています。ここに記載されている関数の
多くは
 Sybase IQ で実装されています。
文法規則
 1
<SELECT LIST EXPRESSION> ::=
<EXPRESSION>
| <GROUP BY EXPRESSION>
| <AGGREGATE FUNCTION>
| <GROUPING FUNCTION>
| <TABLE COLUMN>
| <WINDOWED TABLE FUNCTION>
文法規則
 2
<QUERY SPECIFICATION> ::=
<FROM CLAUSE>
[ <WHERE CLAUSE> ]
[ <GROUP BY CLAUSE> ]
[ <HAVING CLAUSE> ]
[ <WINDOW CLAUSE> ]
[ <ORDER BY CLAUSE> ]
文法規則
 3
<ORDER BY CLAUSE> ::= <ORDER SPECIFICATION>
文法規則
 4
<GROUPING FUNCTION> ::=
GROUPING <LEFT PAREN> <GROUP BY EXPRESSION> 
<RIGHT PAREN>
文法規則
 5
<WINDOWED TABLE FUNCTION> ::=
<WINDOWED TABLE FUNCTION TYPE> OVER <WINDOW NAME OR
SPECIFICATION>
文法規則
 6
<WINDOWED TABLE FUNCTION TYPE> ::=
<RANK FUNCTION TYPE> <LEFT PAREN> <RIGHT PAREN>
ROW_NUMBER <LEFT PAREN> <RIGHT PAREN>
| <WINDOW AGGREGATE FUNCTION>
文法規則
 7
<RANK FUNCTION TYPE> ::=
RANK | DENSE RANK | PERCENT RANK | CUME_DIST