Die Systemfunktion 'mathLib.min()' gibt die kleinere von zwei Zahlen (oder numerischen Ausdrücken) zurück.
Wenn die zwei Zahlen einen unterschiedlichen Typ aufweisen, stuft EGL den kleineren Typ (gemäß Bytezahl) auf den größeren hoch. Wenn Sie beispielsweise einen Wert vom Typ BIGINT mit einem Wert vom Typ FLOAT vergleichen, vergleicht EGL die Zahlen als FLOAT-Werte und gibt die kleinere als FLOAT zurück. Wenn Sie anschließend den Rückgabewert einer Nicht-Gleitkommavariablen (die also nicht vom Typ FLOAT ist) zuordnen, kann es möglicherweise zu einem Rundungsfehler kommen.
mathLib.min(
numerische_Variable1 SMALLINT | INT | BIGINT |
DECIMAL | SMALLFLOAT | FLOAT in,
numerische_Variable2 SMALLINT | INT | BIGINT |
DECIMAL | SMALLFLOAT | FLOAT in)
returns (Ergebnis SMALLINT | INT | BIGINT |
DECIMAL | SMALLFLOAT | FLOAT)
package com.companyb.customer;
Program calc2
Function main()
x DECIMAL(9,6) = 5.123456;
y FLOAT = 1.11111111111;
result ANY;
result = mathLib.min(x,y);
writeStdOut(result);
// Ergebnis = 1.11111111111, Typ ist FLOAT
end // Ende von 'main()'
end // Ende von 'program'