この章では、Oracle Continuous Query Language (Oracle CQL)に含まれるjava.lang.Math関数のリファレンスを提供します。
詳細は、次の項を参照してください。
この章の内容は次のとおりです。
java.lang.Math関数の概要表12-1に、Oracle CQLに用意されている組込みのjava.lang.Math関数を示します。
|
表12-1 Oracle CQLの組込みの
|
注意:
組込み関数名では大文字と小文字が区別されるため、表示されている方(小文字)を使用してください。
注意:
ストリーム入力の例で、hで始まる行(h 3800など)はハートビート入力タプルです。これは、ハートビート値よりも小さいタイムスタンプを持つこれ以上の入力がないことをOracle Stream Analyticsに通知します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.htmlを参照してください。
構文

目的
absは、integerの入力引数の絶対値をintegerとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(int)を参照してください。
例
問合せq66について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q66"><![CDATA[ select abs(c1) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 -4,0.7,6 1200 -3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1 1000: + 4 1200: + 3 2000: + 8
構文

目的
absは、longの入力引数の絶対値をlongとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(long)を参照してください。
例
問合せq67について考えてみます。スキーマ(c1 integer, c2 float, c3 long)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q67"><![CDATA[ select abs1(c3) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,-6 1200 3,0.89,-12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 8 1000: + 6 1200: + 12 2000: + 4
構文

目的
abs2は、floatの入力引数の絶対値をfloatとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(float)を参照してください。
例
問合せq68について考えてみます。スキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q68"><![CDATA[ select abs2(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,-0.7,6 1200 3,-0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.5 1000: + 0.7 1200: + 0.89 2000: + 0.4
構文

目的
abs3は、doubleの入力引数の絶対値をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#abs(double)を参照してください。
例
問合せq69について考えてみます。スキーマ(c1 integer, c2 float, c3 bigint, c4 double)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q69"><![CDATA[ select abs3(c4) from SFunc ]]></query>
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
Timestamp Tuple Kind Tuple 10: + 0.25334 1000: + 4.64322 1200: + 1.4672272 2000: + 2.66777
構文

目的
acosは、0.0からpiの範囲の、doubleの角度の逆余弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#acos(double)を参照してください。
例
問合せq73について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q73"><![CDATA[ select acos(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.0471976 1000: + 0.79539883 1200: + 0.4734512 2000: + 1.1592795
構文

目的
asinは、-pi/2からpi/2の範囲の、doubleの角度の逆正弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#asin(double)を参照してください。
例
問合せq74について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q74"><![CDATA[ select asin(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.5235988 1000: + 0.7753975 1200: + 1.0973451 2000: + 0.41151685
構文

目的
atanは、-pi/2からpi/2の範囲の、doubleの角度の逆正接をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan(double)を参照してください。
例
問合せq75について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q75"><![CDATA[ select atan(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.4636476 1000: + 0.61072594 1200: + 0.7272627 2000: + 0.3805064
構文

目的
atan2は、直交座標(x,y)を極座標(r,theta)に変換します。
この関数は、次の引数をとります。
double1: 縦座標。
double2: 横座標。
この関数は、デカルト座標の点(x,y)に対応する極座標の点(r,theta)のシータ成分をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#atan2(double,%20double)を参照してください。
例
問合せq63について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q63"><![CDATA[ select atan2(c2,c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.7853982 1000: + 0.7853982 1200: + 0.7853982 2000: + 0.7853982
構文

目的
cbrtは、doubleの引数の立方根をdoubleとして返します。
正の有限のaの場合は、cbrt(-a) == -cbrt(a)になります。つまり、負の値の立方根は、その値の大きさの立方根の負量です。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cbrt(double)を参照してください。
例
問合せq76について考えてみます。スキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q76"><![CDATA[ select cbrt(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.7937005 1000: + 0.887904 1200: + 0.9619002 2000: + 0.73680633
構文

目的
ceil1は、doubleの引数以上であり、数学的整数に等しいdoubleの最小(負の無限大に最も近い)値を返します。
丸めエラーの発生を回避するには、(long) cern.jet.math.Arithmetic.ceil(double)の使用を検討してください。
詳細は、次を参照してください。
例
問合せq77について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q77"><![CDATA[ select ceil1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.0 1000: + 1.0 1200: + 1.0 2000: + 1.0
構文

目的
cosは、doubleの角度の三角法の余弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cos(double)を参照してください。
例
問合せq61について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q61"><![CDATA[ select cos(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.87758255 1000: + 0.7648422 1200: + 0.62941206 2000: + 0.921061
構文

目的
coshは、doubleの値の双曲線余弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#cosh(double)を参照してください。
例
問合せq78について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
tkdata140.cqlx、data/inpSColtFunc.txt、log/outSColtcosh.txt
<query id="q78"><![CDATA[ select cosh(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.127626 1000: + 1.255169 1200: + 1.4228927 2000: + 1.0810723
構文

目的
expは、オイラー数eのdouble引数を指数とする累乗をdoubleとして返します。
0に近い値xの場合、EXP(x)よりもEXPM1(x) + 1の厳密な合計の方が、xを指数として累乗するオイラー数eの実際の結果にはるかに近くなります。
詳細は、次を参照してください。
例
問合せq79について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q79"><![CDATA[ select exp(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.6487212 1000: + 2.0137527 1200: + 2.4351296 2000: + 1.4918247
構文

目的
expm1は、図12-1に示す計算をdoubleとして返します。xはdoubleの引数、eはオイラー数です。
図12-1 java.lang.Math Expm1

0に近い値xの場合、EXP(x)よりもEXPM1(x) + 1の厳密な合計の方が、xを指数として累乗するオイラー数eの実際の結果にはるかに近くなります。
詳細は、次を参照してください。
例
問合せq80について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q80"><![CDATA[ select expm1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.6487213 1000: + 1.0137527 1200: + 1.4351296 2000: + 0.49182472
構文

目的
floor1は、doubleの引数以下であり、数学的整数に等しいdoubleの最大(正の無限大に最も近い)値を返します。
丸めエラーの発生を回避するには、(long) cern.jet.math.Arithmetic.floor(double)の使用を検討してください。
詳細は、次を参照してください。
例
問合せq81について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q81"><![CDATA[ select floor1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.0 1000: + 0.0 1200: + 0.0 2000: + 0.0
構文

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

この関数は、次の引数をとります。
double1: xの値。
double2: yの値。
斜辺の計算は、中間のオーバーフローまたはアンダーフローなく行われます。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#hypot(double,%20double)を参照してください。
例
問合せq82について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q82"><![CDATA[ select hypot(c2,c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.70710677 1000: + 0.98994946 1200: + 1.2586501 2000: + 0.56568545
構文

目的
IEEEremainderは、IEEE 754標準の規定に従って2つのdoubleの引数の剰余演算を行い、その結果をdoubleとして返します。
この関数は、次の引数をとります。
double1: 被除数。
double2: 除数。
剰余値は、数学的に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)を参照してください。
例
問合せq72について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q72"><![CDATA[ select IEEEremainder(c2,c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.0 1000: + 0.0 1200: + 0.0 2000: + 0.0
構文

目的
log1は、doubleの値の自然対数(底はe)をdoubleとして返します。
値xが小さい場合、log(1.0+x)の浮動小数点評価よりもlog1p(x)の結果の方が、ln(1 + x)の実際の結果にはるかに近くなります。
詳細は、次を参照してください。
例
問合せq83について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q83"><![CDATA[ select log1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + -0.6931472 1000: + -0.35667497 1200: + -0.11653383 2000: + -0.9162907
構文

目的
log101は、doubleの値の10を底とする対数をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#log10(double)を参照してください。
例
問合せq84について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q84"><![CDATA[ select log101(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + -0.30103 1000: + -0.15490197 1200: + -0.050610002 2000: + -0.39794
構文

目的
log1pは、doubleの引数と1の合計の自然対数をdoubleとして返します。
値xが小さい場合、log(1.0+x)の浮動小数点評価よりもlog1p(x)の結果の方が、ln(1 + x)の実際の結果にはるかに近くなります。
詳細は、次を参照してください。
例
問合せq85について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q85"><![CDATA[ select log1p(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.4054651 1000: + 0.53062826 1200: + 0.63657683 2000: + 0.33647224
構文

目的
powは、2番目のdoubleの引数を指数として累乗する最初のdoubleの引数(底)の値をdoubleとして返します。
この関数は、次の引数をとります。
double1: 底。
double2: 累乗の指数。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#pow(double,%20double)を参照してください。
例
問合せq65について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q65"><![CDATA[ select pow(c2,c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.70710677 1000: + 0.7790559 1200: + 0.9014821 2000: + 0.69314486
構文

目的
rintは、doubleの引数に最も近く、数学的整数に等しいdoubleの値を返します。数学的整数である2つのdoubleの値がどちらも等しく近い場合、結果は同等の整数値になります。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#rint(double)を参照してください。
例
問合せq86について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q86"><![CDATA[ select rint(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.0 1000: + 1.0 1200: + 1.0 2000: + 0.0
構文

目的
roundは、引数に最も近いintegerを返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#round(float)を参照してください。
入出力の型
この関数の入出力の型は次のとおりです。
| 入力の型 | 出力の型 |
|---|---|
DOUBLE |
DOUBLE |
INTEGER |
INTEGER |
FLOAT |
FLOAT |
BIGINT |
BIGINT |
BIGDECIMAL |
BIGDECIMAL |
例
問合せq87について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q87"><![CDATA[ select round(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1 1000: + 1 1200: + 1 2000: + 0
構文

目的
round1は、floatの引数に最も近いintegerを返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#round(float)を参照してください。
例
問合せq88について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q88"><![CDATA[ select round1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1 1000: + 1 1200: + 1 2000: + 0
構文

目的
signumは、doubleの引数の符号関数をdoubleとして返します。
引数が0の場合は0です
引数が0より大きい場合は1.0です
引数が0より小さい場合は-1.0です
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#signum(double)を参照してください。
例
問合せq70について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q70"><![CDATA[ select signum(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,-0.7,6 1200 3,-0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.0 1000: + -1.0 1200: + -1.0 2000: + 1.0
構文

目的
signum1は、floatの引数の符号関数をfloatとして返します。
引数が0の場合は0です
引数が0より大きい場合は1.0です
引数が0より小さい場合は-1.0です
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#signum(float)を参照してください。
例
問合せq71について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはリレーションを返します。
<query id="q71"><![CDATA[ select signum1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,-0.7,6 1200 3,-0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.0 1000: + -1.0 1200: + -1.0 2000: + 1.0
構文

目的
sinは、doubleの角度の三角法の正弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sin(double)を参照してください。
例
問合せq60について考えてみます。スキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q60"><![CDATA[ select sin(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.47942555 1000: + 0.64421767 1200: + 0.7770717 2000: + 0.38941833
構文

目的
sinhは、doubleの値の双曲線正弦をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sinh(double)を参照してください。
例
問合せq89について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q89"><![CDATA[ select sinh(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.5210953 1000: + 0.75858366 1200: + 1.012237 2000: + 0.41075233
構文

目的
sqrtは、doubleの値の正しく丸められた正の平方根をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#sqrt(double)を参照してください。
例
問合せq64について考えてみます。スキーマ(c1 integer, c2 float, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q64"><![CDATA[ select sqrt(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.70710677 1000: + 0.83666 1200: + 0.9433981 2000: + 0.6324555
構文

目的
tanは、doubleの角度の三角法の正接をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#tan(double)を参照してください。
例
問合せq62について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q62"><![CDATA[ select tan(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.5463025 1000: + 0.8422884 1200: + 1.2345995 2000: + 0.42279324
構文

目的
tanhは、doubleの値の双曲線正接をdoubleとして返します。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#tanh(double)を参照してください。
例
問合せq90について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q90"><![CDATA[ select tanh(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.46211717 1000: + 0.6043678 1200: + 0.7113937 2000: + 0.37994897
構文

目的
todegreesは、ラジアン単位で測定されるdoubleの角度を、度数で測定されるほぼ等しいdoubleの角度に変換します。
一般に、ラジアンから度数への変換は厳密ではありません。COS(TORADIANS(90.0))が0.0に等しいと見なさないようにしてください。
詳細は、次を参照してください。
例
問合せq91について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q91"><![CDATA[ select todegrees(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 28.64789 1000: + 40.107044 1200: + 50.993244 2000: + 22.918312
構文

目的
toradiansは、度数で測定されるdoubleの角度を、ラジアン単位で測定されるほぼ等しいdoubleの角度に変換します。
詳細は、次を参照してください。
例
問合せq92について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q92"><![CDATA[ select toradians(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 0.008726646 1000: + 0.012217305 1200: + 0.0155334305 2000: + 0.006981317
構文

目的
ulpは、doubleの引数のULPの大きさをdoubleとして返します。この場合、引数値のULPは、この浮動小数点値と次に大きいdoubleの値との間の正の距離です。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#ulp(double)を参照してください。
例
問合せq93について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはストリームを返します。
<query id="q93"><![CDATA[ select ulp(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 1.110223E-16 1000: + 1.110223E-16 1200: + 1.110223E-16 2000: + 5.551115E-17
構文

目的
ulp1は、floatの引数のULPの大きさをfloatとして返します。floatの値のULPは、この浮動小数点値と次に大きいfloatの値との間の正の距離です。
詳細は、http://java.sun.com/javase/6/docs/api/java/lang/Math.html#ulp(float)を参照してください。
例
問合せq94について考えてみます。スキーマ(c1 integer, c2 double, c3 bigint)を持つデータ・ストリームSFuncの場合、この問合せはリレーションを返します。
<query id="q94"><![CDATA[ select ulp1(c2) from SFunc ]]></query>
Timestamp Tuple 10 1,0.5,8 1000 4,0.7,6 1200 3,0.89,12 2000 8,0.4,4
Timestamp Tuple Kind Tuple 10: + 5.9604645E-8 1000: + 5.9604645E-8 1200: + 5.9604645E-8 2000: + 2.9802322E-8