数値関数
次の表では、ODBC スカラー関数セットに含まれる数値関数について説明します。 SQL_NUMERIC_FUNCTIONSの情報型SQLGetInfo を呼び出すことによって、アプリケーションはドライバーでサポートされている数値関数を決定できます。
ABS、ROUND、TRUNCATE、SIGN、FLOOR、CEILING を除くすべての数値関数は、入力パラメーターと同じデータ型の値を返す、SQL_FLOATデータ型の値を返します。
numeric_expとして示される引数には、列の名前、別のスカラー関数の結果、または基になるデータ型をSQL_NUMERIC、SQL_DECIMAL、SQL_TINYINT、SQL_SMALLINT、SQL_INTEGER、SQL_BIGINT、SQL_FLOAT、SQL_REAL、またはSQL_DOUBLEとして表すことができる数値リットルl を指定できます。
float_expとして示される引数には、列の名前、別のスカラー関数の結果、または基になるデータ型をSQL_FLOATとして表すことができる数値リテラルを指定できます。
integer_expとして示される引数には、列の名前、別のスカラー関数の結果、または基になるデータ型をSQL_TINYINT、SQL_SMALLINT、SQL_INTEGER、またはSQL_BIGINTとして表すことができる数値リテラルを指定できます。
SQL-92 に合わせて、ODBC 3.0 にCURRENT_DATE、CURRENT_TIME、およびCURRENT_TIMESTAMPスカラー関数が追加されました。
関数 | 説明 |
---|---|
ABS( numeric_exp ) (ODBC 1.0) | numeric_expの絶対値を返します。 |
ACOS( float_exp ) (ODBC 1.0) | float_expのアークコサインを角度として返します。ラジアンで表されます。 |
ASIN( float_exp ) (ODBC 1.0) | float_expのアークサインを角度として返します。ラジアンで表されます。 |
ATAN( float_exp ) (ODBC 1.0) | float_expのアークタンジェントを角度として返します。ラジアンで表されます。 |
ATAN2( float_exp1, float_exp2) (ODBC 2.0) | xおよびy座標のアークタンジェントを返します。それぞれ、float_exp1およびfloat_exp2で指定されます。角度はラジアンで表されます。 |
CEILING( numeric_exp ) (ODBC 1.0) | numeric_exp以上の最小の整数を返します。 戻り値は、入力パラメーターと同じデータ型です。 |
COS( float_exp ) (ODBC 1.0) | float_expのコサインを返します。ここで、float_expはラジアンで表される角度です。 |
COT( float_exp ) (ODBC 1.0) | float_expのコタンジェントを返します。ここで、float_expはラジアンで表される角度です。 |
DEGREES( numeric_exp ) (ODBC 2.0) | ラジアンから変換された度数 numeric_exp 返します。 |
EXP( float_exp ) (ODBC 1.0) | float_expの指数値を返します。 |
FLOOR( numeric_exp ) (ODBC 1.0) | numeric_exp以下の最大の整数を返します。 戻り値は、入力パラメーターと同じデータ型です。 |
LOG( float_exp ) (ODBC 1.0) | float_expの自然対数を返します。 |
LOG10( float_exp ) (ODBC 2.0) | float_expの底 10 の対数を返します。 |
MOD( integer_exp1, integer_exp2) (ODBC 1.0) | integer_exp1の࠾余 (࠾余) をinteger_exp2で除算して返します。 |
PI( ) (ODBC 1.0) | pi の定数値を浮動小数点値として返します。 |
POWER( numeric_exp, integer_exp) (ODBC 2.0) | numeric_expの値をinteger_expの累乗に返します。 |
RADIANS( numeric_exp ) (ODBC 2.0) | numeric_exp度から変換されたラジアンの数を返します。 |
RAND([integer_exp]) (ODBC 1.0) | 省略可能なシード値として integer_exp を使用して、ランダムな浮動小数点値を返します。 |
ROUND( numeric_exp, integer_exp) (ODBC 2.0) | 小数点の右integer_exp位置に丸められたnumeric_expを返します。 integer_expが負の値の場合、numeric_expは | に丸められます。integer_exp| 小数点の左側に配置します。 |
SIGN( numeric_exp ) (ODBC 1.0) | numeric_expの符号のインジケーターを返します。 numeric_expが 0 未満の場合は、-1 が返されます。 numeric_expが 0 の場合は 0 が返されます。 numeric_expが 0 より大きい場合は、1 が返されます。 |
SIN( float_exp ) (ODBC 1.0) | float_expのサインを返します。ここで、float_expはラジアンで表された角度です。 |
SQRT( float_exp ) (ODBC 1.0) | float_expの平方根を返します。 |
TAN( float_exp ) (ODBC 1.0) | float_expのタンジェントを返します。ここで、float_expはラジアンで表される角度です。 |
TRUNCATE( numeric_exp, integer_exp) (ODBC 2.0) | 小数点の右integer_exp位置に切り捨てられたnumeric_expを返します。 integer_expが負の値の場合、numeric_expは | に切り捨てられますinteger_exp| 小数点の左側に配置します。 |