Numerieke functies
In de volgende tabel worden numerieke functies beschreven die zijn opgenomen in de ODBC scalaire functieset. Door SQLGetInfo- aan te roepen met een informatietype van SQL_NUMERIC_FUNCTIONS, kan een toepassing bepalen welke numerieke functies worden ondersteund door een stuurprogramma.
Alle numerieke functies retourneren waarden van het gegevenstype SQL_FLOAT behalve ABS, AFRONDEN, AFKAPPEN, TEKEN, VLOER en PLAFOND, die waarden retourneren van hetzelfde gegevenstype als de invoerparameters.
Argumenten die worden aangeduid als numeric_exp kunnen de naam zijn van een kolom, het resultaat van een andere scalaire functie of een numerieke letterlijke, waarbij het onderliggende gegevenstype kan worden weergegeven als SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL of SQL_DOUBLE.
Argumenten die worden aangeduid als float_exp kunnen de naam zijn van een kolom, het resultaat van een andere scalaire functie of een numerieke letterlijke, waarbij het onderliggende gegevenstype kan worden weergegeven als SQL_FLOAT.
Argumenten die worden aangeduid als integer_exp kunnen de naam zijn van een kolom, het resultaat van een andere scalaire functie of een numerieke letterlijke, waarbij het onderliggende gegevenstype kan worden weergegeven als SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER of SQL_BIGINT.
De CURRENT_DATE-, CURRENT_TIME- en CURRENT_TIMESTAMP scalaire functies zijn toegevoegd in ODBC 3.0 om te worden afgestemd op SQL-92.
Functie | Beschrijving |
---|---|
ABS(numeric_exp) (ODBC 1.0) | Geeft als resultaat de absolute waarde van numeric_exp. |
ACOS(float_exp) (ODBC 1.0) | Berekent de arccosinus van float_exp als een hoek, uitgedrukt in radialen. |
ASIN(float_exp) (ODBC 1.0) | Berekent de boogsinus van float_exp als een hoek, uitgedrukt in radialen. |
ATAN(float_exp) (ODBC 1.0) | Berekent de boogtangens van float_exp als een hoek, uitgedrukt in radialen. |
ATAN2(float_exp1, float_exp2) (ODBC 2.0) | Berekent de boogtangens van de x en y coƶrdinaten, respectievelijk opgegeven door float_exp1 en float_exp2, als een hoek, uitgedrukt in radialen. |
CEILING(numeric_exp) (ODBC 1.0) | Retourneert het kleinste gehele getal dat groter is dan of gelijk is aan numeric_exp. De retourwaarde is van hetzelfde gegevenstype als de invoerparameter. |
COS(float_exp) (ODBC 1.0) | Berekent de cosinus van float_exp, waarbij float_exp een hoek is uitgedrukt in radialen. |
COT(float_exp) (ODBC 1.0) | Berekent de cotangens van float_exp, waarbij float_exp een hoek is uitgedrukt in radialen. |
DEGREES(numeric_exp) (ODBC 2.0) | Geeft als resultaat het aantal graden dat wordt geconverteerd van numeric_exp radialen. |
EXP(float_exp) (ODBC 1.0) | Geeft als resultaat de exponentiƫle waarde van float_exp. |
FLOOR(numeric_exp) (ODBC 1.0) | Retourneert het grootste gehele getal dat kleiner is dan of gelijk is aan numeric_exp. De retourwaarde is van hetzelfde gegevenstype als de invoerparameter. |
LOG(float_exp) (ODBC 1.0) | Geeft als resultaat de natuurlijke logaritme van float_exp. |
LOG10(float_exp) (ODBC 2.0) | Retourneert de logaritme met grondtal 10 van float_exp. |
MOD(integer_exp1, integer_exp2) (ODBC 1.0) | Berekent de rest (modulus) van integer_exp1 gedeeld door integer_exp2. |
PI( ) (ODBC 1.0) | Retourneert de constante waarde van pi als een zwevende-kommawaarde. |
POWER(numeric_exp, integer_exp) (ODBC 2.0) | Retourneert de waarde van numeric_exp aan de macht van integer_exp. |
RADIANS(numeric_exp) (ODBC 2.0) | Geeft als resultaat het aantal radialen dat is geconverteerd van numeric_exp graden. |
RAND([integer_exp]) (ODBC 1.0) | Retourneert een willekeurige drijvendekommage-waarde met behulp van integer_exp als de optionele seed-waarde. |
ROUND(numeric_exp, integer_exp) (ODBC 2.0) | Retourneert numeric_exp afgerond op integer_exp rechts van het decimaalteken. Als integer_exp negatief is, wordt numeric_exp afgerond op |integer_exp| wordt links van het decimaalteken weergegeven. |
SIGN(numeric_exp) (ODBC 1.0) | Retourneert een indicator van het teken van numeric_exp. Als numeric_exp kleiner is dan nul, wordt -1 geretourneerd. Als numeric_exp gelijk is aan nul, wordt 0 geretourneerd. Als numeric_exp groter is dan nul, wordt 1 geretourneerd. |
SIN(float_exp) (ODBC 1.0) | Berekent de sinus van float_exp, waarbij float_exp een hoek is uitgedrukt in radialen. |
SQRT(float_exp) (ODBC 1.0) | Retourneert de vierkantswortel van float_exp. |
TAN(float_exp) (ODBC 1.0) | Berekent de tangens van float_exp, waarbij float_exp een hoek is uitgedrukt in radialen. |
TRUNCATE(numeric_exp, integer_exp) (ODBC 2.0) | Retourneert numeric_exp afgekapt tot integer_exp posities rechts van het decimaalteken. Als integer_exp negatief is, wordt numeric_exp afgekapt tot |integer_exp| wordt links van het decimaalteken weergegeven. |