ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Complex Event Processing CQL言語リファレンス
11gリリース1 (11.1.1.6.2)
B61613-04
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

12 java.lang.Math関数

この章では、Oracle Continuous Query Language (Oracle CQL)に含まれるjava.lang.Math関数のリファレンスを提供します。

詳細は、1.1.11項「関数」を参照してください。

12.1 Oracle CQLの組込みのjava.lang.Math関数の概要

表12-1に、Oracle CQLに用意されている組込みのjava.lang.Math関数を示します。

表12-1 Oracle CQLの組込みのjava.lang.Math関数

関数

三角


対数


オイラー数


ルート


符号関数


最終桁単位


その他




注意:

組込み関数名では大文字と小文字が区別されるため、表示されている方(小文字)を使用してください。



注意:

ストリーム入力の例で、hで始まる行(h 3800など)はハートビート入力タプルです。これは、ハートビート値よりも小さいタイムスタンプを持つこれ以上の入力がないことをOracle CEPに通知します。


詳細は、以下を参照してください。


abs

構文

abs.pngについては周囲のテキストで説明しています。

目的

absは、integerの入力引数の絶対値をintegerとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(int)を参照してください。

例12-1では問合せq66を示しています。例12-2ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-3に示すストリームを返します。

例12-1 abs関数の問合せ

<query id="q66"><![CDATA[ 
    select abs(c1) from SFunc
]]></query>

例12-2 abs関数のストリーム入力

Timestamp   Tuple
  10         1,0.5,8
1000        -4,0.7,6
1200        -3,0.89,12
2000         8,0.4,4

例12-3 abs関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1
1000:       +           4
1200:       +           3
2000:       +           8

abs1

構文

abs1.pngについては周囲のテキストで説明しています。

目的

absは、longの入力引数の絶対値をlongとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(long)を参照してください。

例12-4では問合せq67を示しています。例12-5ではスキーマ(c1 integer, c2 float, c3 long)を持つデータ・ストリームSFuncを示しており、この問合せは例12-6に示すストリームを返します。

例12-4 abs1関数の問合せ

<query id="q67"><![CDATA[ 
    select abs1(c3) from SFunc
]]></query>

例12-5 abs1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,-6
1200        3,0.89,-12
2000        8,0.4,4

例12-6 abs1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           8
1000:       +           6
1200:       +           12
2000:       +           4

abs2

構文

abs2.pngについては周囲のテキストで説明しています。

目的

abs2は、floatの入力引数の絶対値をfloatとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(float)を参照してください。

例12-7では問合せq68を示しています。例12-8ではスキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-9に示すストリームを返します。

例12-7 abs2関数の問合せ

<query id="q68"><![CDATA[ 
    select abs2(c2) from SFunc
]]></query>

例12-8 abs2関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,-0.7,6
1200        3,-0.89,12
2000        8,0.4,4

例12-9 abs2関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.5 
1000:       +           0.7 
1200:       +           0.89
2000:       +           0.4 

abs3

構文

abs3.pngについては周囲のテキストで説明しています。

目的

abs3は、doubleの入力引数の絶対値をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(double)を参照してください。

例12-10では問合せq69を示しています。例12-11ではスキーマ(c1 integer, c2 float, c3 bigint, c4 double)を持つデータ・ストリームSFuncを示しており、この問合せは例12-12に示すストリームを返します。

例12-10 abs3関数の問合せ

<query id="q69"><![CDATA[ 
    select abs3(c4) from SFunc
]]></query>

例12-11 abs3関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8,0.25334
1000        4,0.7,6,-4.64322
1200        3,0.89,12,-1.4672272
2000        8,0.4,4,2.66777

例12-12 abs3関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.25334
1000:       +           4.64322
1200:       +           1.4672272
2000:       +           2.66777

acos

構文

acos.pngについては周囲のテキストで説明しています。

目的

acosは、0.0からpiの範囲の、doubleの角度の逆余弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#acos(double)を参照してください。

例12-13では問合せq73を示しています。例12-14ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-15に示すストリームを返します。

例12-13 acos関数の問合せ

<query id="q73"><![CDATA[ 
    select acos(c2) from SFunc
]]></query>

例12-14 acos関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-15 acos関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.0471976 
1000:       +           0.79539883
1200:       +           0.4734512 
2000:       +           1.1592795 

asin

構文

asin.pngについては周囲のテキストで説明しています。

目的

asinは、-pi/2からpi/2の範囲の、doubleの角度の逆正弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#asin(double)を参照してください。

例12-16では問合せq74を示しています。例12-17ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-18に示すストリームを返します。

例12-16 asin関数の問合せ

<query id="q74"><![CDATA[ 
    select asin(c2) from SFunc
]]></query>

例12-17 asin関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-18 asin関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.5235988 
1000:       +           0.7753975 
1200:       +           1.0973451 
2000:       +           0.41151685

atan

構文

atan.pngについては周囲のテキストで説明しています。

目的

atanは、-pi/2からpi/2の範囲の、doubleの角度の逆正接をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan(double)を参照してください。

例12-19では問合せq75を示しています。例12-20ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-21に示すストリームを返します。

例12-19 atan関数の問合せ

<query id="q75"><![CDATA[ 
    select atan(c2) from SFunc
]]></query>

例12-20 atan関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-21 atan関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.4636476 
1000:       +           0.61072594
1200:       +           0.7272627 
2000:       +           0.3805064 

atan2

構文

atan2.pngについては周囲のテキストで説明しています。

目的

atan2は、直交座標(x,y)を極座標(r,theta)に変換します。

この関数は次の引数を使用します。

この関数は、デカルト座標の点(x,y)に対応する極座標の点(r,theta)のシータ成分をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan2(double,%20double)を参照してください。

例12-22では問合せq63を示しています。例12-23ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-24に示すストリームを返します。

例12-22 atan2関数の問合せ

<query id="q63"><![CDATA[ 
    select atan2(c2,c2) from SFunc
]]></query>

例12-23 atan2関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-24 atan2関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.7853982
1000:       +           0.7853982
1200:       +           0.7853982
2000:       +           0.7853982

cbrt

構文

cbrt.pngについては周囲のテキストで説明しています。

目的

cbrtは、doubleの引数の立方根をdoubleとして返します。

正の有限のaの場合は、cbrt(-a) == -cbrt(a)になります。つまり、負の値の立方根は、その値の大きさの立方根の負量です。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cbrt(double)を参照してください。

例12-25では問合せq76を示しています。例12-26ではスキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-27に示すストリームを返します。

例12-25 cbrt関数の問合せ

<query id="q76"><![CDATA[ 
    select cbrt(c2) from SFunc
]]></query>

例12-26 cbrt関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-27 cbrt関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.7937005 
1000:       +           0.887904  
1200:       +           0.9619002 
2000:       +           0.73680633

ceil1

構文

ceil1.pngについては周囲のテキストで説明しています。

目的

ceil1は、doubleの引数以上であり、数学的整数に等しいdoubleの最小(負の無限大に最も近い)値を返します。

丸めエラーの発生を回避するには、(long) cern.jet.math.Arithmetic.ceil(double)の使用を検討してください。

詳細は、以下を参照してください。

例12-28では問合せq77を示しています。例12-29ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-30に示すストリームを返します。

例12-28 ceil1関数の問合せ

<query id="q77"><![CDATA[ 
    select ceil1(c2) from SFunc
]]></query>

例12-29 ceil1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-30 ceil1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.0
1000:       +           1.0
1200:       +           1.0
2000:       +           1.0

cos

構文

cos.pngについては周囲のテキストで説明しています。

目的

cosは、doubleの角度の三角法の余弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cos(double)を参照してください。

例12-31では問合せq61を示しています。例12-32ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-33に示すストリームを返します。

例12-31 cos関数の問合せ

<query id="q61"><![CDATA[ 
    select cos(c2) from SFunc
]]></query>

例12-32 cos関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-33 cos関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.87758255
1000:       +           0.7648422 
1200:       +           0.62941206
2000:       +           0.921061  

cosh

構文

cosh.pngについては周囲のテキストで説明しています。

目的

coshは、doubleの値の双曲線余弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cosh(double)を参照してください。

例12-34では問合せq78を示しています。例12-35ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-36に示すストリームを返します。

例12-34 cosh関数の問合せ

<query id="q78"><![CDATA[ 
    select cosh(c2) from SFunc
]]></query>

例12-35 cosh関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-36 cosh関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.127626 
1000:       +           1.255169 
1200:       +           1.4228927
2000:       +           1.0810723

exp

構文

exp.pngについては周囲のテキストで説明しています。

目的

expは、オイラー数edouble引数を指数とする累乗をdoubleとして返します。

0に近い値xの場合、EXP(x)よりもEXPM1(x) + 1の厳密な合計の方が、xを指数として累乗するオイラー数eの実際の結果にはるかに近くなります。

詳細は、以下を参照してください。

例12-37では問合せq79を示しています。例12-38ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-39に示すストリームを返します。

例12-37 exp関数の問合せ

<query id="q79"><![CDATA[ 
    select exp(c2) from SFunc
]]></query>

例12-38 exp関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-39 exp関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.6487212
1000:       +           2.0137527
1200:       +           2.4351296
2000:       +           1.4918247

expm1

構文

expm1.pngについては周囲のテキストで説明しています。

目的

expm1は、図12-1に示す計算をdoubleとして返します。xdoubleの引数、eはオイラー数です。

図12-1 java.lang.Math Expm1

図12-1については周囲のテキストで説明しています。

0に近い値xの場合、EXP(x)よりもEXPM1(x) + 1の厳密な合計の方が、xを指数として累乗するオイラー数eの実際の結果にはるかに近くなります。

詳細は、以下を参照してください。

例12-40では問合せq80を示しています。例12-41ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-42に示すストリームを返します。

例12-40 expm1関数の問合せ

<query id="q80"><![CDATA[ 
    select expm1(c2) from SFunc
]]></query>

例12-41 expm1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-42 expm1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.6487213 
1000:       +           1.0137527 
1200:       +           1.4351296 
2000:       +           0.49182472

floor1

構文

floor1.pngについては周囲のテキストで説明しています。

目的

floor1は、doubleの引数以下であり、数学的整数に等しいdoubleの最大(正の無限大に最も近い)値を返します。

丸めエラーの発生を回避するには、(long) cern.jet.math.Arithmetic.floor(double)の使用を検討してください。

詳細は、以下を参照してください。

例12-43では問合せq81を示しています。例12-44ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-45に示すストリームを返します。

例12-43 floor1関数の問合せ

<query id="q81"><![CDATA[ 
    select floor1(c2) from SFunc
]]></query>

例12-44 floor1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-45 floor1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.0
1000:       +           0.0
1200:       +           0.0
2000:       +           0.0

hypot

構文

hypot.pngについては周囲のテキストで説明しています。

目的

hypotは、doubleの引数の斜辺(図12-2を参照)をdoubleとして返します。

図12-2 java.lang.Math hypot

図12-2については周囲のテキストで説明しています。

この関数は次の引数を使用します。

斜辺の計算は、中間のオーバーフローまたはアンダーフローなく行われます。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#hypot(double,%20double)を参照してください。

例12-46では問合せq82を示しています。例12-47ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-48に示すストリームを返します。

例12-46 hypot関数の問合せ

<query id="q82"><![CDATA[ 
    select hypot(c2,c2) from SFunc
]]></query>

例12-47 hypot関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-48 hypot関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.70710677
1000:       +           0.98994946
1200:       +           1.2586501 
2000:       +           0.56568545

IEEERemainder

構文

ieeeremainder.pngについては周囲のテキストで説明しています。

目的

IEEERemainderは、IEEE 754標準の規定に従って2つのdoubleの引数の剰余演算を行い、その結果をdoubleとして返します。

この関数は次の引数を使用します。

剰余値は、数学的にf1 - f2 × nに等しくなります。nは、f1/f2の商の数学的厳密値に最も近い数学的整数です。2つの数学的整数がどちらもf1/f2に等しく近い場合、nは偶数の整数になります。剰余が0の場合、その符号は第1引数の符号と同じになります。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#IEEEremainder(double,%20double)を参照してください。

例12-49では問合せq72を示しています。例12-50ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-51に示すストリームを返します。

例12-49 IEEERemainder関数の問合せ

<query id="q72"><![CDATA[ 
    select IEEERemainder(c2,c2) from SFunc
]]></query>

例12-50 IEEERemainder関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-51 IEEERemainder関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.0
1000:       +           0.0
1200:       +           0.0
2000:       +           0.0

log1

構文

log1.pngについては周囲のテキストで説明しています。

目的

log1は、doubleの値の自然対数(底はe)をdoubleとして返します。

xが小さい場合、log(1.0+x)の浮動小数点評価よりもlog1p(x)の結果の方が、ln(1 + x)の実際の結果にはるかに近くなります。

詳細は、以下を参照してください。

例12-52では問合せq83を示しています。例12-53ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-54に示すストリームを返します。

例12-52 log1関数の問合せ

<query id="q83"><![CDATA[ 
    select log1(c2) from SFunc
]]></query>

例12-53 log1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-54 log1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           -0.6931472 
1000:       +           -0.35667497
1200:       +           -0.11653383
2000:       +           -0.9162907 

log101

構文

log101.pngについては周囲のテキストで説明しています。

目的

log101は、doubleの値の10を底とする対数をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#log10(double)を参照してください。

例12-55では問合せq84を示しています。例12-56ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-57に示すストリームを返します。

例12-55 log101関数の問合せ

<query id="q84"><![CDATA[ 
    select log101(c2) from SFunc
]]></query>

例12-56 log101関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-57 log101関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           -0.30103    
1000:       +           -0.15490197 
1200:       +           -0.050610002
2000:       +           -0.39794    

log1p

構文

log1p.pngについては周囲のテキストで説明しています。

目的

log1pは、doubleの引数と1の合計の自然対数をdoubleとして返します。

xが小さい場合、log(1.0+x)の浮動小数点評価よりもlog1p(x)の結果の方が、ln(1 + x)の実際の結果にはるかに近くなります。

詳細は、以下を参照してください。

例12-58では問合せq85を示しています。例12-59ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-60に示すストリームを返します。

例12-58 log1p関数の問合せ

<query id="q85"><![CDATA[ 
    select log1p(c2) from SFunc
]]></query>

例12-59 log1p関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-60 log1p関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.4054651 
1000:       +           0.53062826
1200:       +           0.63657683
2000:       +           0.33647224

pow

構文

pow.pngについては周囲のテキストで説明しています。

目的

powは、2番目のdoubleの引数を指数として累乗する最初のdoubleの引数(底)の値をdoubleとして返します。

この関数は次の引数を使用します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#pow(double,%20double)を参照してください。

例12-61では問合せq65を示しています。例12-62ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-63に示すストリームを返します。

例12-61 pow関数の問合せ

<query id="q65"><![CDATA[ 
    select pow(c2,c2) from SFunc
]]></query>

例12-62 pow関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-63 pow関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.70710677
1000:       +           0.7790559 
1200:       +           0.9014821 
2000:       +           0.69314486

rint

構文

rint.pngについては周囲のテキストで説明しています。

目的

rintは、doubleの引数に最も近く、数学的整数に等しいdoubleの値を返します。数学的整数である2つのdoubleの値がどちらも等しく近い場合、結果は同等の整数値になります。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#rint(double)を参照してください。

例12-64では問合せq86を示しています。例12-65ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-66に示すストリームを返します。

例12-64 rint関数の問合せ

<query id="q86"><![CDATA[ 
    select rint(c2) from SFunc
]]></query>

例12-65 rint関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-66 rint関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.0
1000:       +           1.0
1200:       +           1.0
2000:       +           0.0

round

構文

round.pngについては周囲のテキストで説明しています。

目的

roundは、floatの引数に最も近いintegerを返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#round(float)を参照してください。

例12-67では問合せq87を示しています。例12-68ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-69に示すストリームを返します。

例12-67 round関数の問合せ

<query id="q87"><![CDATA[ 
    select round(c2) from SFunc
]]></query>

例12-68 round関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-69 round関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1
1000:       +           1
1200:       +           1
2000:       +           0

round1

構文

round1.pngについては周囲のテキストで説明しています。

目的

round1は、floatの引数に最も近いintegerを返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#round(float)を参照してください。

例12-70では問合せq88を示しています。例12-71ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-72に示すストリームを返します。

例12-70 round1関数の問合せ

<query id="q88"><![CDATA[ 
    select round1(c2) from SFunc
]]></query>

例12-71 round1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-72 round1関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1
1000:       +           1
1200:       +           1
2000:       +           0

signum

構文

signum.pngについては周囲のテキストで説明しています。

目的

signumは、doubleの引数の符号関数をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#signum(double)を参照してください。

例12-73では問合せq70を示しています。例12-74ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-75に示すストリームを返します。

例12-73 signum関数の問合せ

<query id="q70"><![CDATA[ 
    select signum(c2) from SFunc
]]></query>

例12-74 signum関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,-0.7,6
1200        3,-0.89,12
2000        8,0.4,4

例12-75 signum関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.0
1000:       +           -1.0
1200:       +           -1.0
2000:       +           1.0

signum1

構文

signum1.pngについては周囲のテキストで説明しています。

目的

signum1は、floatの引数の符号関数をfloatとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#signum(float)を参照してください。

例12-76では問合せq71を示しています。例12-77ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-78に示すリレーションを返します。

例12-76 signum1関数の問合せ

<query id="q71"><![CDATA[ 
    select signum1(c2) from SFunc
]]></query>

例12-77 signum1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,-0.7,6
1200        3,-0.89,12
2000        8,0.4,4

例12-78 signum1関数のリレーション出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.0
1000:       +           -1.0
1200:       +           -1.0
2000:       +           1.0

sin

構文

sin.pngについては周囲のテキストで説明しています。

目的

sinは、doubleの角度の三角法の正弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sin(double)を参照してください。

例12-79では問合せq60を示しています。例12-80ではスキーマ(c1 integerc2 floatc3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-81に示すストリームを返します。

例12-79 sin関数の問合せ

<query id="q60"><![CDATA[ 
    select sin(c2) from SFunc
]]></query>

例12-80 sin関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-81 sin関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.47942555
1000:       +           0.64421767
1200:       +           0.7770717 
2000:       +           0.38941833

sinh

構文

sinh.pngについては周囲のテキストで説明しています。

目的

sinhは、doubleの値の双曲線正弦をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sinh(double)を参照してください。

例12-82では問合せq89を示しています。例12-83ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-84に示すストリームを返します。

例12-82 sinh関数の問合せ

<query id="q89"><![CDATA[ 
    select sinh(c2) from SFunc
]]></query>

例12-83 sinh関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-84 sinh関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.5210953 
1000:       +           0.75858366
1200:       +           1.012237  
2000:       +           0.41075233

sqrt

構文

sqrt.pngについては周囲のテキストで説明しています。

目的

sqrtは、doubleの値の正しく丸められた正の平方根をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sqrt(double)を参照してください。

例12-85では問合せq64を示しています。例12-86ではスキーマ(c1 integerc2 floatc3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-87に示すストリームを返します。

例12-85 sqrt関数の問合せ

<query id="q64"><![CDATA[ 
    select sqrt(c2) from SFunc
]]></query>

例12-86 sqrt関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-87 sqrt関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.70710677
1000:       +           0.83666   
1200:       +           0.9433981 
2000:       +           0.6324555 

tan

構文

tan.pngについては周囲のテキストで説明しています。

目的

tanは、doubleの角度の三角法の正接をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#tan(double)を参照してください。

例12-88では問合せq62を示しています。例12-89ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-90に示すストリームを返します。

例12-88 tan関数の問合せ

<query id="q62"><![CDATA[ 
    select tan(c2) from SFunc
]]></query>

例12-89 tan関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-90 tan関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.5463025 
1000:       +           0.8422884 
1200:       +           1.2345995 
2000:       +           0.42279324

tanh

構文

tanh.pngについては周囲のテキストで説明しています。

目的

tanhは、doubleの値の双曲線正接をdoubleとして返します。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#tanh(double)を参照してください。

例12-91では問合せq90を示しています。例12-92ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-93に示すストリームを返します。

例12-91 tanh関数の問合せ

<query id="q90"><![CDATA[ 
    select tanh(c2) from SFunc
]]></query>

例12-92 tanh関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-93 tanh関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.46211717
1000:       +           0.6043678 
1200:       +           0.7113937 
2000:       +           0.37994897

todegrees

構文

todegrees.pngについては周囲のテキストで説明しています。

目的

todegreesは、ラジアン単位で測定されるdoubleの角度を、度数で測定されるほぼ等しいdoubleの角度に変換します。

一般に、ラジアンから度数への変換は厳密ではありません。COS(TORADIANS(90.0))0.0に等しいと見なさないようにしてください。

詳細は、以下を参照してください。

例12-94では問合せq91を示しています。例12-95ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-96に示すストリームを返します。

例12-94 todegrees関数の問合せ

<query id="q91"><![CDATA[ 
    select todegrees(c2) from SFunc
]]></query>

例12-95 todegrees関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-96 todegrees関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           28.64789 
1000:       +           40.107044
1200:       +           50.993244
2000:       +           22.918312

toradians

構文

toradians.pngについては周囲のテキストで説明しています。

目的

toradiansは、度数で測定されるdoubleの角度を、ラジアン単位で測定されるほぼ等しいdoubleの角度に変換します。

詳細は、以下を参照してください。

例12-97では問合せq92を示しています。例12-98ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-99に示すストリームを返します。

例12-97 toradians関数の問合せ

<query id="q92"><![CDATA[ 
    select toradians(c2) from SFunc
]]></query>

例12-98 toradians関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-99 toradians関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           0.008726646 
1000:       +           0.012217305 
1200:       +           0.0155334305
2000:       +           0.006981317 

ulp

構文

ulp.pngについては周囲のテキストで説明しています。

目的

ulpは、doubleの引数のULPの大きさをdoubleとして返します。この場合、引数値のULPは、この浮動小数点値と次に大きいdoubleの値との間の正の距離です。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#ulp(double)を参照してください。

例12-100では問合せq93を示しています。例12-101ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-102に示すストリームを返します。

例12-100 ulp関数の問合せ

<query id="q93"><![CDATA[ 
    select ulp(c2) from SFunc
]]></query>

例12-101 ulp関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-102 ulp関数のストリーム出力

Timestamp   Tuple Kind  Tuple
  10:       +           1.110223E-16
1000:       +           1.110223E-16
1200:       +           1.110223E-16
2000:       +           5.551115E-17

ulp1

構文

ulp1.pngについては周囲のテキストで説明しています。

目的

ulp1は、floatの引数のULPの大きさをfloatとして返します。floatの値のULPは、この浮動小数点値と次に大きいfloatの値との間の正の距離です。

詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#ulp(float)を参照してください。

例12-103では問合せq94を示しています。例12-104ではスキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncを示しており、この問合せは例12-105に示すリレーションを返します。

例12-103 ulp1関数の問合せ

<query id="q94"><![CDATA[ 
    select ulp1(c2) from SFunc
]]></query>

例12-104 ulp1関数のストリーム入力

Timestamp   Tuple
  10        1,0.5,8
1000        4,0.7,6
1200        3,0.89,12
2000        8,0.4,4

例12-105 ulp1関数のリレーション出力

Timestamp   Tuple Kind  Tuple
  10:       +           5.9604645E-8
1000:       +           5.9604645E-8
1200:       +           5.9604645E-8
2000:       +           2.9802322E-8