Funzioni numeriche
Nella tabella seguente vengono descritte le funzioni numeriche incluse nel set di funzioni scalari ODBC. Chiamando SQLGetInfo con un tipo di informazioni di SQL_NUMERIC_FUNCTIONS, un'applicazione può determinare quali funzioni numeriche sono supportate da un driver.
Tutte le funzioni numeriche restituiscono valori di tipo di dati SQL_FLOAT ad eccezione di ABS, ROUND, TRUNCATE, SIGN, FLOOR e CEILING, che restituiscono valori dello stesso tipo di dati dei parametri di input.
Gli argomenti indicati come numeric_exp possono essere il nome di una colonna, il risultato di un'altra funzione scalare o un l numerico,doveil tipo di dati sottostante può essere rappresentato come SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL o SQL_DOUBLE.
Gli argomenti indicati come float_exp possono essere il nome di una colonna, il risultato di un'altra funzione scalare o un valore letterale numerico, in cui il tipo di dati sottostante può essere rappresentato come SQL_FLOAT.
Gli argomenti indicati come integer_exp possono essere il nome di una colonna, il risultato di un'altra funzione scalare o un valore letterale numerico, in cui il tipo di dati sottostante può essere rappresentato come SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER o SQL_BIGINT.
Le funzioni scalari CURRENT_DATE, CURRENT_TIME e CURRENT_TIMESTAMP sono state aggiunte in ODBC 3.0 per allinearsi a SQL-92.
Funzione | Descrizione |
---|---|
ABS( numeric_exp ) (ODBC 1.0) | Restituisce il valore assoluto di numeric_exp. |
ACOS( float_exp ) (ODBC 1.0) | Restituisce l'arcocosina di float_exp come angolo espresso in radianti. |
ASIN( float_exp ) (ODBC 1.0) | Restituisce l'arcosine di float_exp come angolo espresso in radianti. |
ATAN( float_exp ) (ODBC 1.0) | Restituisce l'arcotangente di float_exp come angolo espresso in radianti. |
ATAN2( float_exp1, float_exp2) (ODBC 2.0) | Restituisce l'arcotangente delle coordinate x e y , specificate rispettivamente da float_exp1 e float_exp2, come angolo, espresso in radianti. |
CEILING( numeric_exp ) (ODBC 1.0) | Restituisce il numero intero più piccolo maggiore o uguale a numeric_exp. Il valore restituito è dello stesso tipo di dati del parametro di input. |
COS( float_exp ) (ODBC 1.0) | Restituisce il coseno di float_exp, dove float_exp è un angolo espresso in radianti. |
COT( float_exp ) (ODBC 1.0) | Restituisce la cotangente di float_exp, dove float_exp è un angolo espresso in radianti. |
DEGREES( numeric_exp ) (ODBC 2.0) | Restituisce il numero di gradi convertiti da numeric_exp radianti. |
EXP( float_exp ) (ODBC 1.0) | Restituisce il valore esponenziale di float_exp. |
FLOOR( numeric_exp ) (ODBC 1.0) | Restituisce il numero intero più grande minore o uguale a numeric_exp. Il valore restituito è dello stesso tipo di dati del parametro di input. |
LOG( float_exp ) (ODBC 1.0) | Restituisce il logaritmo naturale di float_exp. |
LOG10( float_exp ) (ODBC 2.0) | Restituisce il logaritmo di base 10 di float_exp. |
MOD( integer_exp1, integer_exp2) (ODBC 1.0) | Restituisce il resto (modulo) di integer_exp1 diviso per integer_exp2. |
PI( ) (ODBC 1.0) | Restituisce il valore costante di pi come valore a virgola mobile. |
POWER( numeric_exp, integer_exp) (ODBC 2.0) | Restituisce il valore di numeric_exp alla potenza di integer_exp. |
RADIANS( numeric_exp ) (ODBC 2.0) | Restituisce il numero di radianti convertiti da numeric_exp gradi. |
RAND([integer_exp]) (ODBC 1.0) | Restituisce un valore a virgola mobile casuale utilizzando integer_exp come valore di inizializzazione facoltativo. |
ROUND( numeric_exp, integer_exp) (ODBC 2.0) | Restituisce numeric_exp arrotondato a integer_exp posizioni a destra del separatore decimale. Se integer_exp è negativo, numeric_exp viene arrotondato a |integer_exp | posiziona a sinistra del separatore decimale. |
SIGN( numeric_exp ) (ODBC 1.0) | Restituisce un indicatore del segno di numeric_exp. Se numeric_exp è minore di zero, viene restituito -1. Se numeric_exp è uguale a zero, viene restituito 0. Se numeric_exp è maggiore di zero, viene restituito 1. |
SIN( float_exp ) (ODBC 1.0) | Restituisce il seno di float_exp, dove float_exp è un angolo espresso in radianti. |
SQRT( float_exp ) (ODBC 1.0) | Restituisce la radice quadrata di float_exp. |
TAN( float_exp ) (ODBC 1.0) | Restituisce la tangente di float_exp, dove float_exp è un angolo espresso in radianti. |
TRUNCATE( numeric_exp, integer_exp) (ODBC 2.0) | Restituisce numeric_exp troncato in integer_exp posizioni a destra del separatore decimale. Se integer_exp è negativo, numeric_exp viene troncato in |integer_exp | posiziona a sinistra del separatore decimale. |