Compartir vía


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 valor numeric-literal, donde el tipo de datos subyacente se puede 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.