Numerische Funktionen
In der folgenden Tabelle werden numerische Funktionen beschrieben, die im ODBC-Skalar-Funktionssatz enthalten sind. Durch Aufrufen von SQLGetInfo mit einem Informationstyp von SQL_NUMERIC_FUNCTIONS kann eine Anwendung bestimmen, welche numerischen Funktionen von einem Treiber unterstützt werden.
Alle numerischen Funktionen geben Werte vom Datentyp SQL_FLOAT zurück, mit Ausnahme von ABS, ROUND, TRUNCATE, SIGN, FLOOR und CEILING, die Werte desselben Datentyps wie die Eingabeparameter zurückgeben.
Als numeric_exp bezeichnete Argumente können der Name einer Spalte, das Ergebnis einer anderen skalaren Funktion oder eine numerischen Literal-sein, wobei der zugrunde liegende Datentyp als SQL_NUMERIC, SQL_DECIMAL, SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER, SQL_BIGINT, SQL_FLOAT, SQL_REAL oder SQL_DOUBLE dargestellt werden kann.
Als float_exp bezeichnete Argumente können der Name einer Spalte, das Ergebnis einer anderen skalaren Funktion oder ein numerisches Literal sein, wobei der zugrunde liegende Datentyp als SQL_FLOAT dargestellt werden kann.
Als integer_exp bezeichnete Argumente können der Name einer Spalte, das Ergebnis einer anderen skalaren Funktion oder ein numerisches Literal sein, wobei der zugrunde liegende Datentyp als SQL_TINYINT, SQL_SMALLINT, SQL_INTEGER oder SQL_BIGINT dargestellt werden kann.
Die funktionen CURRENT_DATE, CURRENT_TIME und CURRENT_TIMESTAMP skalaren Funktionen wurden in ODBC 3.0 hinzugefügt, um sie an SQL-92 auszurichten.
Funktion | Beschreibung |
---|---|
ABS(numeric_exp) (ODBC 1.0) | Gibt den absoluten Wert von numeric_exp zurück. |
ACOS(float_exp) (ODBC 1.0) | Gibt den Arkuskosinus von float_exp als Winkel zurück, ausgedrückt in Bogenmaß. |
ASIN(float_exp) (ODBC 1.0) | Gibt den Arkussinus von float_exp als Winkel zurück, ausgedrückt in Bogenmaß. |
ATAN(float_exp) (ODBC 1.0) | Gibt den Arkutangens von float_exp als Winkel zurück, der in Bogenmaß ausgedrückt wird. |
ATAN2(float_exp1, float_exp2) (ODBC 2.0) | Gibt den Arkustangens der x- und y-Koordinaten zurück, die durch float_exp1 bzw. float_exp2 als Winkel angegeben werden, ausgedrückt in Bogenmaß. |
OBERGRENZE(numeric_exp) (ODBC 1.0) | Gibt die kleinste ganze Zahl zurück, die größer oder gleich numeric_exp ist. Der Rückgabewert hat denselben Datentyp wie der Eingabeparameter. |
COS(float_exp) (ODBC 1.0) | Gibt den Kosinus von float_exp zurück, wobei float_exp ein Winkel ist, der in Bogenmaß ausgedrückt wird. |
COT(float_exp) (ODBC 1.0) | Gibt den Kotangens von float_exp zurück, wobei float_exp ein Winkel ist, der in Bogenmaß ausgedrückt wird. |
DEGREES(numeric_exp) (ODBC 2.0) | Gibt die Anzahl der von numeric_exp Bogenmaßen konvertierten Grad zurück. |
EXP(float_exp) (ODBC 1.0) | Gibt den exponentiellen Wert von float_exp zurück. |
FLOOR(numeric_exp) (ODBC 1.0) | Gibt die größte ganze Zahl kleiner oder gleich numeric_exp zurück. Der Rückgabewert hat denselben Datentyp wie der Eingabeparameter. |
LOG(float_exp) (ODBC 1.0) | Gibt den natürlichen Logarithmus von float_exp zurück. |
LOG10(float_exp) (ODBC 2.0) | Gibt den Logarithmus der Basis 10 float_exp zurück. |
MOD(integer_exp1, integer_exp2) (ODBC 1.0) | Gibt den Rest (Modulus) von integer_exp1 dividiert durch integer_exp2 zurück. |
PI( ) (ODBC 1.0) | Gibt den konstanten Wert von pi als Gleitkommawert zurück. |
POWER(numeric_exp, integer_exp) (ODBC 2.0) | Gibt den Wert von numeric_exp an die Leistungsfähigkeit von integer_exp zurück. |
BOGENMAß(numeric_exp) (ODBC 2.0) | Gibt die Anzahl der Bogenmaße zurück, die aus numeric_exp Grad konvertiert wurden. |
RAND([integer_exp]) (ODBC 1.0) | Gibt einen zufälligen Gleitkommawert zurück, der integer_exp als optionaler Ausgangswert verwendet. |
ROUND(numeric_exp, integer_exp) (ODBC 2.0) | Gibt numeric_exp auf integer_exp Stellen rechts vom Dezimalkomma gerundet zurück. Wenn integer_exp negativ ist, wird numeric_exp auf | gerundetinteger_exp| links neben dem Dezimalkomma. |
SIGN(numeric_exp) (ODBC 1.0) | Gibt einen Indikator des Zeichens numeric_exp zurück. Wenn numeric_exp kleiner als 0 ist, wird -1 zurückgegeben. Wenn numeric_exp gleich Null ist, wird 0 zurückgegeben. Wenn numeric_exp größer als 0 ist, wird 1 zurückgegeben. |
SIN(float_exp) (ODBC 1.0) | Gibt den Sinus von float_exp zurück, wobei float_exp ein Winkel ist, der in Bogenmaß ausgedrückt wird. |
SQRT(float_exp) (ODBC 1.0) | Gibt die Quadratwurzel float_exp zurück. |
TAN(float_exp) (ODBC 1.0) | Gibt den Tangens von float_exp zurück, wobei float_exp ein Winkel ist, der in Bogenmaß ausgedrückt wird. |
TRUNCATE(numeric_exp, integer_exp) (ODBC 2.0) | Gibt numeric_exp an integer_exp Stellen rechts vom Dezimalkomma abgeschnitten zurück. Wenn integer_exp negativ ist, wird numeric_exp auf | abgeschnitten.integer_exp| links neben dem Dezimalkomma. |