表19-11は、この項で説明しているOCI NUMBER関数を示しています。
表19-11 NUMBER関数
| 関数 | 用途 |
|---|---|
|
|
絶対値を計算します。 |
|
|
|
|
|
アーク・コサインを計算します。 |
|
|
アーク・サインを計算します。 |
|
|
アーク・タンジェントを計算します。 |
|
|
2つの |
|
|
1つの |
|
|
|
|
|
|
|
|
コサインを計算します。 |
|
|
|
|
|
2つの |
|
|
eを指定のOracle |
|
|
|
|
|
整数をOracle |
|
|
実数型をOracle |
|
|
文字列をOracle |
|
|
双曲線コサインを計算します。 |
|
|
双曲線サインを計算します。 |
|
|
双曲線タンジェントを計算します。 |
|
|
Oracle |
|
|
指定の基数を整数で累乗します。 |
|
|
|
|
|
|
|
|
自然対数を計算します。 |
|
|
任意の基数に対する対数を計算します。 |
|
|
2つのOracle |
|
|
2つのOracle |
|
|
Oracle |
|
|
指定の基数を指定の指数で累乗します。 |
|
|
|
|
|
Oracle |
|
|
|
|
|
|
|
|
10の累乗を乗算し、小数点以下を指定の桁数にします。 |
|
|
Oracle |
|
|
サインを計算します。 |
|
|
|
|
|
|
|
|
タンジェントを計算します。 |
|
|
Oracle |
|
|
Oracle |
|
|
|
|
|
Oracle |
|
|
Oracle |
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの絶対値です。
構文
sword OCINumberAdd ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
加算されるNUMBERです。
number1をnumber2に加算した結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・コサインの引数です。
ラジアンのアーク・コサインの結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・サインの引数です。
ラジアンのアーク・サインの結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・タンジェントの引数です。
ラジアンのアーク・タンジェントの結果です。
構文
sword OCINumberArcTan2 ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
アーク・タンジェントの引数1です。
アーク・タンジェントの引数2です。
ラジアンのアーク・タンジェントの結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
割当て対象のNUMBERです。
コピー先のNUMBERです。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの上限値を含む出力です。
構文
sword OCINumberCmp ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
sword *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
比較するNUMBERです。
表19-12に指定したような比較結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアンのコサインの引数です。
コサインの結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
減分される正数のOracle NUMBERです。
構文
sword OCINumberDiv ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
分子へのポインタです。
分母へのポインタです。
除算結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
この関数は、eをこのOracle NUMBERで累乗します。
指数の出力です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの下限(切捨て)値です。
構文
sword OCINumberFromInt ( OCIError *err,
const void *inum,
uword inum_length,
uword inum_s_flag,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換する整数へのポインタです。
整数のサイズです。
整数の符号を指定するフラグで、可能な値は次のとおりです。
OCI_NUMBER_UNSIGNED- 符号なしの値
OCI_NUMBER_SIGNED- 符号付きの値
Oracle NUMBERに変換される指定の整数です。
構文
sword OCINumberFromReal ( OCIError *err,
const void *rnum,
uword rnum_length,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換する浮動小数点数へのポインタです。
目的の結果のサイズです。sizeof({float | double | long double})に等しくなります。
Oracle NUMBERに変換される指定のfloatです。
構文
sword OCINumberFromText ( OCIError *err,
const OraText *str,
ub4 str_length,
const OraText *fmt,
ub4 fmt_length,
const OraText *nls_params,
ub4 nls_p_length,
OCINumber *number );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
Oracle NUMBERに変換する入力文字列です。
入力文字列のサイズです。
変換書式です。
fmtパラメータの長さです。
グローバリゼーション・サポートのフォーマット指定です。NULL文字列("")の場合は、セッションのデフォルト・パラメータが使用されます。
nls_paramsパラメータの長さです。
NUMBERに変換される指定の文字列です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
コサイン双曲線の引数です。
コサイン双曲線の結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
サイン双曲線の引数です。
サイン双曲線の結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
タンジェント双曲線の引数です。
タンジェント双曲線の結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
増分される正数のOracle NUMBERです。
構文
sword OCINumberIntPower ( OCIError *err,
const OCINumber *base,
const sword exp,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
指数の基数です。
基数が累乗される指数です。
指数の出力です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
テストされるNUMBERです。
整数値の場合はTRUE、それ以外の場合はFALSEに設定されます。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
比較するNUMBERです。
0 (ゼロ)の場合はTRUE、それ以外の場合はFALSEが設定されます。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
このNUMBERの対数を計算します。
対数結果です。
構文
sword OCINumberLog ( OCIError *err,
const OCINumber *base,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
対数の基数です。
演算子です。
対数結果です。
構文
sword OCINumberMod ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
分子へのポインタです。
分母へのポインタです。
結果の剰余です。
構文
sword OCINumberMul ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
乗算するNUMBERです。
乗算するNUMBERです。
乗算結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
負の数にするNUMBERです。
numberの負の値が入ります。
構文
sword OCINumberPower ( OCIError *err,
const OCINumber *base,
const OCINumber *number,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
指数の基数です。
基数が累乗される指数です。
指数の出力です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
精度を設定する数値です。
目的の結果の小数点以下の桁数です。
結果です。
構文
sword OCINumberRound ( OCIError *err,
const OCINumber *number,
sword decplace,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
丸めるNUMBERです。
丸める小数点以下の桁数です。負数も可能です。
丸めた結果の出力です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
piの値に設定されるNUMBERです。
構文
sword OCINumberShift ( OCIError *err,
const OCINumber *number,
const sword nDig,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
桁を移動するOracle NUMBERです。
移動する小数点以下の桁数です。
桁を移動した結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
符号が戻されるOracle NUMBERです。
表19-13は、可能な戻り値を示しています。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアン単位でのサインの引数です。
サインの結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
入力NUMBERの平方根を含む出力です。
構文
sword OCINumberSub ( OCIError *err,
const OCINumber *number1,
const OCINumber *number2,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
この関数は、number1からnumber2を減算します。
減算結果です。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
ラジアン単位でのタンジェントの引数です。
タンジェントの結果です。
構文
sword OCINumberToInt ( OCIError *err,
const OCINumber *number,
uword rsl_length,
uword rsl_flag,
void *rsl );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するOracle NUMBERです。
適切な結果のサイズです。
出力値の符号を指定するフラグで、可能な値は次のとおりです。
OCI_NUMBER_UNSIGNED- 符号なしの値
OCI_NUMBER_SIGNED- 符号付きの値
結果を保存する領域へのポインタです。
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するOracle NUMBERです。
目的の結果のサイズです。sizeof({float | double | long double})に等しくなります。
結果を保存する領域へのポインタです。
構文
sword OCINumberToRealArray ( OCIError *err,
const OCINumber **number,
uword elems,
uword rsl_length,
void *rsl );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換対象のNUMBERの配列へのポインタです。
NUMBERポインタの最大数です。
目的の結果のサイズです。sizeof({ float | double | long double })に等しくなります。
結果を保存する領域の配列へのポインタです。
コメント
Oracle NUMBERをマシン固有の実数型に変換するシステム固有な型変換関数です。この関数は、最大LDBL_DIG、DBL_DIGまたはFLT_DIG桁の精度のNUMBERを変換し、後続の0 (ゼロ)を削除するだけです。この定数は、float.hヘッダー・ファイルに定義されます。
この関数に有効なOCINumberの値を渡す必要があります。それ以外の場合は、結果は保証されません。
構文
sword OCINumberToText ( OCIError *err,
const OCINumber *number,
const OraText *fmt,
ub4 fmt_length,
const OraText *nls_params,
ub4 nls_p_length,
ub4 *buf_size,
OraText *buf );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
変換するOracle NUMBERです。
変換書式です。
fmtパラメータの長さです。
グローバリゼーション・サポートのフォーマット指定です。NULL文字列((text *)0)の場合は、そのセッションのデフォルト・パラメータが使用されます。
nls_paramsパラメータの長さです。
バッファのサイズです。
変換された文字列が配置されるバッファです。
コメント
書式およびグローバリゼーション・サポート・パラメータの詳細は、『Oracle Database SQL言語リファレンス』のTO_NUMBER変換関数の説明を参照してください。
変換された数字文字列は、最大buf_sizeバイトまでbufに格納されます。
構文
sword OCINumberTrunc ( OCIError *err,
const OCINumber *number,
sword decplace,
OCINumber *result );
パラメータ
OCIエラー・ハンドルです。エラーがある場合は、errに記録され、OCI_ERRORが戻されます。OCIErrorGet()をコールして診断情報を取得します。
入力NUMBERです。
切り捨てる小数点以下の桁数です。負数も可能です。
切捨ての出力です。