12 java.lang.Math関数

Oracle Continuous Query Language (Oracle CQL)のjava.lang.Math関数のリファレンスを提供します。

詳細は、次の項を参照してください。

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 Event Processingに通知します。

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

12.2 abs

構文

abs

目的

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

12.3 abs1

構文

abs1

目的

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

12.4 abs2

構文

abs2

目的

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 

12.5 abs3

構文

abs3

目的

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

12.6 acos

構文

acos

目的

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 

12.7 asin

構文

asin

目的

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

12.8 atan

構文

atan

目的

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 

12.9 atan2

構文

atan2

目的

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

12.10 cbrt

構文

cbrt

目的

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

12.11 ceil1

構文

ceil1

目的

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

12.12 cos

構文

cos

目的

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  

12.13 cosh

構文

cosh

目的

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

12.14 exp

構文

exp

目的

expは、オイラー数edouble引数を指数とする累乗を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

12.15 expm1

構文

expm1

目的

expm1は、図12-1に示す計算をdoubleとして返します。xdoubleの引数、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

12.16 floor1

構文

floor1

目的

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

12.17 hypot

構文

hypot

目的

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

図12-2 java.lang.Math hypot

eqt 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

12.18 IEEEremainder

構文

ieee remainder

目的

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

12.19 log1

構文

log1

目的

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 

12.20 log101

構文

log101

目的

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    

12.21 log1p

構文

log1p

目的

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

12.22 pow

構文

pow

目的

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

12.23 rint

構文

rint

目的

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

12.24 round

構文

round

目的

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

12.25 round1

構文

round1

目的

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

12.26 signum

構文

signum

目的

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

12.27 signum1

構文

signum1

目的

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

12.28 sin

構文

sin

目的

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

12.29 sinh

構文

sinh

目的

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

12.30 sqrt

構文

sqrt

目的

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 

12.31 tan

構文

tan

目的

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

12.32 tanh

構文

tanh

目的

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

12.33 todegrees

構文

todegrees

目的

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

12.34 toradians

構文

to radians

目的

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 

12.35 ulp

構文

ulp

目的

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

12.36 ulp1

構文

ulp1

目的

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