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’unnumérique-littéral , 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.