WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

ROUND-Funktion

Die numerische ROUND-Funktion rundet einen angegebenen Wert auf eine angegebene Anzahl Stellen.

Syntax

Syntaxdiagramm lesenSyntaxdiagramm überspringen
>>-ROUND--(--Ausgangszahl--,--Genauigkeit----------------------->

>--+----------------------------+--)---------------------------><
   |      (1)                   |      
   '-MODE------| RoundingMode |-'      

RoundingMode

|--+-ROUND_UP--------+------------------------------------------|
   +-ROUND_DOWN------+   
   +-ROUND_CEILING---+   
   +-ROUND_FLOOR-----+   
   +-ROUND_HALF_UP---+   
   +-ROUND_HALF_EVEN-+   
   '-ROUND_HALF_DOWN-'   

Anmerkungen:
  1. Wenn Sie MODE nicht angeben, wird ein Wert von 'ROUND_HALF_EVEN' verwendet.

Wenn Genauigkeit eine positive Zahl ist, wird Zahl auf Genauigkeit Stellen rechts vom Dezimalzeichen gerundet. Wenn Genauigkeit negativ ist, wird Zahl auf den absoluten Wert von Genauigkeit Stellen links vom Dezimalzeichen gerundet.

Ausgangszahl kann ein beliebiger integrierter numerischer Datentyp sein; Genauigkeit muss eine Ganzzahl sein. Das Ergebnis hat denselben Datentyp wie der Parameter Ausgangszahl, außer wenn Ausgangszahl NULL ist; dann ist auch das Ergebnis NULL.

Dies bedeutet, dass das Ergebnis der Funktion folgendermaßen lautet:
  • INTEGER, wenn Ausgangszahl INTEGER ist
  • FLOAT, wenn Ausgangszahl FLOAT ist
  • DECIMAL, wenn Ausgangszahl DECIMAL ist
Beim Runden wird vom kaufmännischen Runden oder Runden auf die nächste gerade ZahlGebrauch gemacht, wenn für RoundingMode keine Angabe gemacht wurde.

RoundingMode

RoundingMode kann einen der folgenden Werte annehmen:
ROUND_UP
Von null wegrunden. Erhöht immer die Ziffer vor einem verworfenen Bruchteil ungleich null. Bei diesem Rundungsmodus wird der Größenwert des errechneten Werts nie verringert.
ROUND_DOWN
Runden in Richtung null. Erhöht niemals die Ziffer vor einem verworfenen Bruchteil ungleich null, d. h., es wird abgeschnitten. Bei diesem Rundungsmodus wird der Größenwert des errechneten Werts nie erhöht.
ROUND_CEILING
Runden in Richtung positiver Unendlichkeit. Ist die Dezimalzahl positiv, ist das Verhalten wie bei ROUND_UP; ist sie negativ, wie bei ROUND_DOWN. Bei diesem Rundungsmodus wird der errechnete Wert nie verringert.
ROUND_FLOOR
Runden in Richtung negativer Unendlichkeit. Ist die Dezimalzahl positiv, ist das Verhalten wie bei ROUND_DOWN; ist sie negativ, wie bei ROUND_UP. Bei diesem Rundungsmodus wird der errechnete Wert nie erhöht.
ROUND_HALF_UP
Runden zum "nächsten Nachbarn", es sei denn der Abstand beider Nachbarn ist gleich - dann käme es zum Aufrunden. Verhalten wie bei ROUND_UP, wenn der verworfene Teil größergleich 0,5 ist; ansonsten ist das Verhalten wie bei ROUND_DOWN. Dieser Rundungsmodus wird normalerweise in Schulen unterrichtet.
ROUND_HALF_DOWN
Runden zum "nächsten Nachbarn", es sei denn der Abstand beider Nachbarn ist gleich - dann käme es zum Abrunden. Verhalten wie bei ROUND_UP, wenn der verworfene Teil größer als 0,5 ist; ansonsten ist das Verhalten wie bei ROUND_DOWN.
ROUND_HALF_EVEN
Runden zum "nächsten Nachbarn", es sei denn der Abstand beider Nachbarn ist gleich - dann käme es zum Runden auf die nächste gerade Zahl. Verhalten wie bei ROUND_HALF_UP, wenn die Ziffer links des verworfenen Teils ungerade ist; ist sie gerade, ist das Verhalten wie bei ROUND_HALF_DOWN. Dies ist der Rundungsmodus, bei dem kumulative Fehler beim wiederholten Anwenden auf eine Berechnungsfolge minimiert werden; er wird manchmal auch als 'kaufmännisches Runden' bezeichnet.
In der folgenden Tabelle erhalten Sie eine Übersicht zu den Rundungsoperationen mit einer Genauigkeit von null in verschiedenen Rundungsmodi.
Eingabezahl ROUND UP ROUND DOWN ROUND CEILING ROUND FLOOR ROUND HALF UP ROUND HALF DOWN ROUND HALF EVEN
5.5 6 5 6 5 6 5 6
2.5 3 2 3 2 3 2 2
1.6 2 1 2 1 2 2 2
1.1 2 1 2 1 1 1 1
1.0 1 1 1 1 1 1 1
-1.0 -1 -1 -1 -1 -1 -1 -1
-1.1 -2 -1 -1 -2 -1 -1 -1
-1.6 -2 -1 -1 -2 -2 -2 -2
-2.5 -3 -2 -2 -3 -3 -2 -2
-5.5 -6 -5 -5 -6 -6 -5 -6
Beispiele für die Verwendung des standardmäßigen Rundungsmodus (ROUND_HALF_EVEN):
ROUND(27.75, 2)
gibt 27,75 zurück.
ROUND(27.75, 1)
gibt 27.8 zurück
ROUND(27.75, 0)
gibt 28 zurück
ROUND(27.75, -1)
gibt 30 zurück
Beispiele für einen Rundungsmodus mit einer Genauigkeit von null:
ROUND(5.5, 0 MODE ROUND_UP);
gibt 6 zurück
ROUND(5.5, 0 MODE ROUND_DOWN);
gibt 5 zurück
ROUND(5.5, 0 MODE ROUND_CEILING);
gibt 6 zurück
ROUND(5.5, 0 MODE ROUND_FLOOR);
gibt 5 zurück
ROUND(5.5, 0 MODE ROUND_HALF_UP);
gibt 6 zurück
ROUND(5.5, 0 MODE ROUND_HALF_DOWN);
gibt 5 zurück
ROUND(5.5, 0 MODE ROUND_HALF_EVEN);
gibt 6 zurück
ROUND(2.5, 0 MODE ROUND_UP);
gibt 3 zurück
ROUND(2.5, 0 MODE ROUND_DOWN);
gibt 2 zurück
ROUND(2.5, 0 MODE ROUND_CEILING);
gibt 3 zurück
ROUND(2.5, 0 MODE ROUND_FLOOR);
gibt 2 zurück
ROUND(2.5, 0 MODE ROUND_HALF_UP);
gibt 3 zurück
ROUND(2.5, 0 MODE ROUND_HALF_DOWN);
gibt 2 zurück
ROUND(2.5, 0 MODE ROUND_HALF_EVEN);
gibt 2 zurück

Wenn möglich, wird die Anzahl der Kommastellen in den angegebenen Wert geändert. Falls das Ergebnis mit dieser Anzahl der Kommastellen nicht dargestellt werden kann, ist es INFINITY.

Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:21:33


ReferenzthemaReferenzthema | Version 8.0.0.5 | ak05380_