Teilen über


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.

Argumente, die als numeric_exp bezeichnet werden, können der Name einer Spalte, das Ergebnis einer anderen Skalarfunktion oder ein numerisches 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.