ストリームデータ処理基盤 uCosminexus Stream Data Platform - Application Framework アプリケーション開発ガイド
値式::=〔符号〕項〔演算子〔符号〕項〕… 項::=〔キャスト指定〕値式一次子 演算子::={+|-|*|/} 符号::={+|-} キャスト指定::={'('TINYINT')'|'('SMALLINT')'|'('INT〔EGER〕')' |'('BIGINT')'|'('REAL')'|'('FLOAT')'|'('DOUBLE')' |'('DEC〔IMAL〕')'} 値式一次子::={<列指定>|<列名>|<定数>|<スカラ関数>|'('<値式>')'}
値を指定します。
「+」または「-」を指定します。
キャスト指定,および値式一次子を指定します。
キャスト指定に指定するデータ型については,「3.3 CQLのデータ型」を参照してください。
列指定,列名,定数,スカラ関数,または値式を指定します。
「+」,「-」,「*」,または「/」を指定します。演算子の後ろに符号を指定した項を指定する場合,その項は括弧で囲む必要があります。符号と演算子の例を次に示します。
-a+(-b) a*(-b+1) a/(-b)+1
表4-7 四則演算(2項演算)の演算項のデータ型と演算結果のデータ型の関係
項番 | 第1演算項データ型 | 第2演算項データ型 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
TINYINT | SMALLINT | INTEGER | BIGINT | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC | ||
1 | TINYINT | TINYINT | SMALLINT | INTEGER | BIGINT | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC |
2 | SMALLINT | SMALLINT | SMALLINT | INTEGER | BIGINT | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC |
3 | INTEGER | INTEGER | INTEGER | INTEGER | BIGINT | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC |
4 | BIGINT | BIGINT | BIGINT | BIGINT | BIGINT | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC |
5 | REAL | REAL | REAL | REAL | REAL | REAL | FLOAT | DOUBLE | DECIMAL | NUMERIC |
6 | FLOAT | FLOAT | FLOAT | FLOAT | FLOAT | FLOAT | FLOAT | FLOAT | DECIMAL | NUMERIC |
7 | DOUBLE | DOUBLE | DOUBLE | DOUBLE | DOUBLE | DOUBLE | DOUBLE | DOUBLE | DECIMAL | NUMERIC |
8 | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL | DECIMAL |
9 | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC | NUMERIC |
リレーションs1の列aをDECIMAL型にキャストした値と,列bをINT型にキャストした値を出力します。下線部が値式の部分です。
REGISTER QUERY q1 SELECT (DECIMAL)s1.a AS xxx, (INT)s1.b AS yyy FROM s1[ROWS 100];
All Rights Reserved. Copyright (C) 2010, 2014, Hitachi, Ltd.