Partager via


Fonctions numériques

Le tableau suivant décrit les fonctions numériques incluses dans le jeu de fonctions scalaires ODBC. En appelant SQLGetInfo avec un type d’informations de SQL_NUMERIC_FUNCTIONS, une application peut déterminer les fonctions numériques prises en charge par un pilote.

Toutes les fonctions numériques retournent des valeurs de type de données SQL_FLOAT à l’exception de ABS, ROUND, TRUNCATE, SIGN, FLOOR et CEILING, qui retournent les valeurs du même type de données que les paramètres d’entrée.

Les arguments indiqués comme numeric_exp peuvent être le nom d’une colonne, le résultat d’une autre fonction scalaire ou d’un litre numériquel, où le type de données sous-jacent peut être représenté en tant que SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL ou SQL_DOUBLE.

Les arguments indiqués comme float_exp peuvent être le nom d’une colonne, le résultat d’une autre fonction scalaire ou d’un littéral numérique, où le type de données sous-jacent peut être représenté en tant que SQL_FLOAT.

Les arguments indiqués comme integer_exp peuvent être le nom d’une colonne, le résultat d’une autre fonction scalaire ou d’un littéral numérique, où le type de données sous-jacent peut être représenté en tant que SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER ou SQL_BIGINT.

Les fonctions scalaires CURRENT_DATE, CURRENT_TIME et CURRENT_TIMESTAMP ont été ajoutées dans ODBC 3.0 pour s’aligner sur SQL-92.

Fonction Description
ABS( numeric_exp ) (ODBC 1.0) Retourne la valeur absolue de numeric_exp.
ACOS( float_exp ) (ODBC 1.0) Retourne l’arccosine de float_exp sous forme d’angle, exprimée en radians.
ASIN( float_exp ) (ODBC 1.0) Retourne l’arcsin de float_exp sous forme d’angle, exprimé en radians.
ATAN( float_exp ) (ODBC 1.0) Retourne l’arctangente de float_exp sous forme d’angle, exprimée en radians.
ATAN2( float_exp1, float_exp2) (ODBC 2.0) Retourne l’arctangente des coordonnées x et y , spécifiées par float_exp1 et float_exp2, respectivement, sous forme d’angle, exprimées en radians.
CEILING( numeric_exp ) (ODBC 1.0) Retourne le plus petit entier supérieur ou égal à numeric_exp. La valeur de retour est du même type de données que le paramètre d’entrée.
COS( float_exp ) (ODBC 1.0) Retourne le cosinus de float_exp, où float_exp est un angle exprimé en radians.
COT( float_exp ) (ODBC 1.0) Retourne la cotangente de float_exp, où float_exp est un angle exprimé en radians.
DEGREES( numeric_exp ) (ODBC 2.0) Retourne le nombre de degrés convertis à partir de numeric_exp radians.
EXP( float_exp ) (ODBC 1.0) Retourne la valeur exponentielle de float_exp.
FLOOR( numeric_exp ) (ODBC 1.0) Retourne le plus grand entier inférieur ou égal à numeric_exp. La valeur de retour est du même type de données que le paramètre d’entrée.
LOG( float_exp ) (ODBC 1.0) Retourne le logarithme naturel de float_exp.
LOG10( float_exp ) (ODBC 2.0) Retourne le logarithme de base 10 de float_exp.
MOD( integer_exp1, integer_exp2) (ODBC 1.0) Retourne le reste (module) de integer_exp1 divisé par integer_exp2.
PI( ) (ODBC 1.0) Retourne la valeur constante de pi comme valeur à virgule flottante.
POWER( numeric_exp, integer_exp) (ODBC 2.0) Retourne la valeur de numeric_exp à la puissance de integer_exp.
RADIANS( numeric_exp ) (ODBC 2.0) Retourne le nombre de radians convertis à partir de numeric_exp degrés.
RAND([integer_exp]) (ODBC 1.0) Retourne une valeur à virgule flottante aléatoire à l’aide de integer_exp comme valeur initiale facultative.
ROUND( numeric_exp, integer_exp) (ODBC 2.0) Retourne numeric_exp arrondi à integer_exp place à droite de la virgule décimale. Si integer_exp est négative, numeric_exp est arrondi à |integer_exp| place à gauche du point décimal.
SIGN( numeric_exp ) (ODBC 1.0) Retourne un indicateur du signe de numeric_exp. Si numeric_exp est inférieur à zéro, -1 est retourné. Si numeric_exp est égal à zéro, 0 est retourné. Si numeric_exp est supérieur à zéro, 1 est retourné.
SIN( float_exp ) (ODBC 1.0) Retourne le sinus de float_exp, où float_exp est un angle exprimé en radians.
SQRT( float_exp ) (ODBC 1.0) Retourne la racine carrée de float_exp.
TAN( float_exp ) (ODBC 1.0) Retourne la tangente de float_exp, où float_exp est un angle exprimé en radians.
TRUNCATE( numeric_exp, integer_exp) (ODBC 2.0) Retourne numeric_exp tronqué à integer_exp place à droite de la virgule décimale. Si integer_exp est négative, numeric_exp est tronquée à |integer_exp| place à gauche du point décimal.