数值函数
下表描述了 ODBC 标量函数集中包含的数字函数。 通过使用SQL_NUMERIC_FUNCTIONS的信息类型调用 SQLGetInfo,应用程序可以确定驱动程序支持哪些数值函数。
除 ABS、ROUND、TRUNCATE、SIGN、FLOOR 和 CEILING 之外,所有数值函数返回数据类型的值SQL_FLOAT,这些值返回与输入参数相同的数据类型的值。
表示 为numeric_exp 的参数可以是列的名称、另一个标量函数的结果或 数值升l,其中基础数据类型可以表示为SQL_NUMERIC、SQL_DECIMAL、SQL_TINYINT、SQL_SMALLINT、SQL_INTEGER、SQL_BIGINT、SQL_FLOAT、SQL_REAL或SQL_DOUBLE。
表示 为float_exp 的参数可以是列的名称、另一个标量函数的结果或 数值文本,其中基础数据类型可以表示为SQL_FLOAT。
表示 为integer_exp 的参数可以是列的名称、另一个标量函数的结果或 数值文本,其中基础数据类型可以表示为SQL_TINYINT、SQL_SMALLINT、SQL_INTEGER或SQL_BIGINT。
ODBC 3.0 中添加了CURRENT_DATE、CURRENT_TIME和CURRENT_TIMESTAMP标量函数,以便与 SQL-92 保持一致。
函数 | 说明 |
---|---|
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) | 以弧度表示的角度返回由float_exp1和float_exp2分别指定的 x 坐标和 y 坐标的反正切值。 |
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_exp2 integer_exp1的余数(模数)。 |
PI() (ODBC 1.0) | 以浮点值的形式返回 pi 的常量值。 |
POWER(numeric_exp,integer_exp) (ODBC 2.0) | 返回integer_exp幂numeric_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) | 返回 numeric_exp 舍入到 小数点右侧的 integer_exp位。 如果 integer_exp 为负数, 则numeric_exp 舍入为 |integer_exp | 小数点左侧的位置。 |
SIGN(numeric_exp) (ODBC 1.0) | 返回numeric_exp符号的指示器。 如果 numeric_exp 小于零,则返回 -1。 如果 numeric_exp 等于零,则返回 0。 如果 numeric_exp 大于零,则返回 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 | 小数点左侧的位置。 |