Číselné funkce
Následující tabulka popisuje číselné funkce, které jsou součástí skalární sady funkcí ODBC. Voláním SQLGetInfo s informačním typem SQL_NUMERIC_FUNCTIONS může aplikace určit, které číselné funkce ovladač podporuje.
Všechny číselné funkce vrací hodnoty datového typu SQL_FLOAT s výjimkou ABS, ROUND, TRUNCATE, SIGN, FLOOR a CEILING, které vrací hodnoty stejného datového typu jako vstupní parametry.
Argumenty označené jako numeric_exp můžou být název sloupce, výsledek jiné skalární funkce nebo číselného literálu, kde může být podkladový datový typ reprezentován jako SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL nebo SQL_DOUBLE.
Argumenty označené jako float_exp mohou být název sloupce, výsledek jiné skalární funkce nebo číselného literálu, kde může být podkladový datový typ reprezentován jako SQL_FLOAT.
Argumenty označené jako integer_exp můžou být název sloupce, výsledek jiné skalární funkce nebo číselného literálu, kde může být podkladový datový typ reprezentován jako SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER nebo SQL_BIGINT.
Skalární funkce CURRENT_DATE, CURRENT_TIME a CURRENT_TIMESTAMP byly přidány v rozhraní ODBC 3.0, aby byly v souladu s SQL-92.
Funkce | Popis |
---|---|
ABS(numeric_exp) (ODBC 1.0) | Vrátí absolutní hodnotu numeric_exp. |
ACOS(float_exp) (ODBC 1.0) | Vrátí arkus kosinus float_exp jako úhel vyjádřený v radiánech. |
ASIN(float_exp) (ODBC 1.0) | Vrátí arkus sinus float_exp jako úhel vyjádřený v radiánech. |
ATAN(float_exp) (ODBC 1.0) | Vrátí arkusangens float_exp jako úhel vyjádřený v radiánech. |
ATAN2(float_exp1, float_exp2) (ODBC 2.0) | Vrátí arkus tangens x a souřadnic y určenými float_exp1 a float_exp2, v uvedeném pořadí jako úhel vyjádřený v radiánech. |
CEILING(numeric_exp) (ODBC 1.0) | Vrátí nejmenší celé číslo větší nebo rovno numeric_exp. Návratová hodnota je stejného datového typu jako vstupní parametr. |
COS(float_exp) (ODBC 1.0) | Vrátí kosinus float_exp, kde float_exp je úhel vyjádřený v radiánech. |
COT(float_exp) (ODBC 1.0) | Vrátí kotangens float_exp, kde float_exp je úhel vyjádřený v radiánech. |
DEGREES(numeric_exp) (ODBC 2.0) | Vrátí počet stupňů převedených z numeric_exp radiánů. |
EXP(float_exp) (ODBC 1.0) | Vrátí exponenciální hodnotu float_exp. |
FLOOR(numeric_exp) (ODBC 1.0) | Vrátí největší celé číslo menší nebo rovno numeric_exp. Návratová hodnota je stejného datového typu jako vstupní parametr. |
LOG(float_exp) (ODBC 1.0) | Vrátí přirozený logaritmus float_exp. |
LOG10(float_exp) (ODBC 2.0) | Vrátí logaritmus float_expzákladu 10 . |
MOD(integer_exp1, integer_exp2) (ODBC 1.0) | Vrátí zbytek (modul) integer_exp1 děleného integer_exp2. |
PI( ) (ODBC 1.0) | Vrátí konstantní hodnotu pí jako hodnotu s plovoucí desetinou čárkou. |
POWER(numeric_exp, integer_exp) (ODBC 2.0) | Vrátí hodnotu numeric_exp na mocninu integer_exp. |
RADIIANS(numeric_exp) (ODBC 2.0) | Vrátí počet radiánů převedených z numeric_exp stupňů. |
RAND([integer_exp]) (ODBC 1.0) | Vrátí náhodnou hodnotu s plovoucí desetinou čárkou pomocí integer_exp jako volitelnou počáteční hodnotu. |
ROUND(numeric_exp, integer_exp) (ODBC 2.0) | Vrátí numeric_exp zaokrouhlené na integer_exp místa vpravo od desetinné čárky. Pokud je integer_exp záporná, numeric_exp se zaokrouhlí na |integer_exp| nalevo od desetinné čárky. |
SIGN(numeric_exp) (ODBC 1.0) | Vrátí indikátor znaménka numeric_exp. Pokud je numeric_exp menší než nula, vrátí se -1. Pokud se numeric_exp rovná nule, vrátí se hodnota 0. Pokud je numeric_exp větší než nula, vrátí se hodnota 1. |
SIN(float_exp) (ODBC 1.0) | Vrátí sinus float_exp, kde float_exp je úhel vyjádřený v radiánech. |
|
Vrátí druhou odmocninu float_exp. |
TAN(float_exp) (ODBC 1.0) | Vrátí tangens float_exp, kde float_exp je úhel vyjádřený v radiánech. |
TRUNCATE(numeric_exp, integer_exp) (ODBC 2.0) | Vrátí numeric_exp zkrácenou na integer_exp místa vpravo od desetinné čárky. Pokud je integer_exp záporná, numeric_exp se zkrátí na |integer_exp| nalevo od desetinné čárky. |