Funciones numéricas
En la tabla siguiente se describen las funciones numéricas que se incluyen en el conjunto de funciones escalares odbc. Al llamar a SQLGetInfo con un tipo de información de SQL_NUMERIC_FUNCTIONS, una aplicación puede determinar qué funciones numéricas son compatibles con un controlador.
Todas las funciones numéricas devuelven valores de tipo de datos SQL_FLOAT excepto ABS, ROUND, TRUNCATE, SIGN, FLOOR y CEILING, que devuelven valores del mismo tipo de datos que los parámetros de entrada.
Los argumentos indicados como numeric_exp pueden ser el nombre de una columna, el resultado de otra función escalar o un literal numérico, donde el tipo de datos subyacente se podría representar como SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL o SQL_DOUBLE.
Los argumentos indicados como float_exp pueden ser el nombre de una columna, el resultado de otra función escalar o un literal numérico, donde el tipo de datos subyacente se puede representar como SQL_FLOAT.
Los argumentos indicados como integer_exp pueden ser el nombre de una columna, el resultado de otra función escalar o un literal numérico, donde el tipo de datos subyacente se puede representar como SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER o SQL_BIGINT.
Las funciones escalares CURRENT_DATE, CURRENT_TIME y CURRENT_TIMESTAMP se han agregado en ODBC 3.0 para alinearse con SQL-92.
Función | Descripción |
---|---|
ABS(numeric_exp) (ODBC 1.0) | Devuelve el valor absoluto de numeric_exp. |
ACOS(float_exp) (ODBC 1.0) | Devuelve el arcocoseno de float_exp como ángulo, expresado en radianes. |
ASIN(float_exp) (ODBC 1.0) | Devuelve el arcoseno de float_exp como ángulo, expresado en radianes. |
ATAN(float_exp) (ODBC 1.0) | Devuelve la arcotangente de float_exp como un ángulo, expresado en radianes. |
ATAN2(float_exp1, float_exp2) (ODBC 2.0) | Devuelve la arcotangente de las coordenadas x e y, especificadas por float_exp1 y float_exp2, respectivamente, como ángulo, expresado en radianes. |
CEILING(numeric_exp) (ODBC 1.0) | Devuelve el entero más pequeño mayor o igual que numeric_exp. El valor devuelto es del mismo tipo de datos que el parámetro de entrada. |
COS(float_exp) (ODBC 1.0) | Devuelve el coseno de float_exp, donde float_exp es un ángulo expresado en radianes. |
COT(float_exp) (ODBC 1.0) | Devuelve la cotangente de float_exp, donde float_exp es un ángulo expresado en radianes. |
DEGREES(numeric_exp) (ODBC 2.0) | Devuelve el número de grados convertidos de numeric_exp radianes. |
EXP(float_exp) (ODBC 1.0) | Devuelve el valor exponencial de float_exp. |
FLOOR(numeric_exp) (ODBC 1.0) | Devuelve el entero más grande menor o igual que numeric_exp. El valor devuelto es del mismo tipo de datos que el parámetro de entrada. |
LOG(float_exp) (ODBC 1.0) | Devuelve el logaritmo natural de float_exp. |
LOG10(float_exp) (ODBC 2.0) | Devuelve el logaritmo base 10 de float_exp. |
MOD(integer_exp1, integer_exp2) (ODBC 1.0) | Devuelve el resto (módulo) de integer_exp1 dividido por integer_exp2. |
PI( ) (ODBC 1.0) | Devuelve el valor constante de pi como un valor de punto flotante. |
POWER(numeric_exp, integer_exp) (ODBC 2.0) | Devuelve el valor de numeric_exp a la potencia de integer_exp. |
RADIANS(numeric_exp) (ODBC 2.0) | Devuelve el número de radianes convertidos de numeric_exp grados. |
RAND([integer_exp]) (ODBC 1.0) | Devuelve un valor de punto flotante aleatorio mediante integer_exp como valor de inicialización opcional. |
ROUND(numeric_exp, integer_exp) (ODBC 2.0) | Devuelve numeric_exp redondeada a integer_exp coloca a la derecha del separador decimal. Si integer_exp es negativo, numeric_exp se redondea a |integer_exp| coloca a la izquierda del separador decimal. |
SIGN(numeric_exp) (ODBC 1.0) | Devuelve un indicador del signo de numeric_exp. Si numeric_exp es menor que cero, se devuelve -1. Si numeric_exp es igual a cero, se devuelve 0. Si numeric_exp es mayor que cero, se devuelve 1. |
SIN(float_exp) (ODBC 1.0) | Devuelve el seno de float_exp, donde float_exp es un ángulo expresado en radianes. |
SQRT(float_exp) (ODBC 1.0) | Devuelve la raíz cuadrada de float_exp. |
TAN(float_exp) (ODBC 1.0) | Devuelve la tangente de float_exp, donde float_exp es un ángulo expresado en radianes. |
TRUNCATE(numeric_exp, integer_exp) (ODBC 2.0) | Devuelve numeric_exp truncado en integer_exp coloca a la derecha del separador decimal. Si integer_exp es negativo, numeric_exp se trunca en |integer_exp| coloca a la izquierda del separador decimal. |