Die Funktion ROUND - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die Funktion ROUND

Die ROUND-Funktion rundet Zahlen auf den nächsten Ganzzahl- oder Dezimalwert auf.

Die ROUND-Funktion kann optional ein zweites Argument als INTEGER umfassen, um die Anzahl der Dezimalstellen für die Rundung in beide Richtungen anzugeben. Wenn Sie das zweite Argument nicht angeben, wird die Funktion auf die nächste ganze Zahl gerundet. Wenn das zweite Argument Ganzzahl angegeben wurde, wird die Funktion auf die nächste Zahl mit einer Genauigkeit von Ganzzahl Dezimalstellen gerundet.

Syntax

ROUND(number [ , integer ] )

Argumente

number (Zahl

Eine Zahl oder ein Ausdruck, der zu einer Zahl ausgewertet wird. Es kann sich um den Typ DECIMAL, FLOAT8 oder SUPER handeln. Amazon Redshift kann implizit andere numerische Datentypen konvertieren.

integer

(Optional) Eine INTEGER, die die Zahl der Dezimalstellen für das Runden in beide Richtungen angibt. Der SUPER-Datentyp wird für dieses Argument nicht unterstützt.

Rückgabetyp

ROUND gibt denselben numerischen Datentyp wie die Eingabezahlzurück.

Wenn die Eingabe den Typ SUPER hat, behält die Ausgabe den gleichen dynamischen Typ wie die Eingabe bei, während der statische Typ weiterhin den Typ SUPER hat. Wenn der dynamische Typ von SUPER keine Zahl ist, gibt Amazon Redshift NULL zurück.

Beispiele

In den folgenden Beispielen werden Daten aus der TICKIT-Beispieldatenbank verwendet. Weitere Informationen finden Sie unter Beispieldatenbank.

Verwenden Sie das folgende Beispiel, um die für eine bestimmte Transaktion gezahlte Vergütung auf die nächste ganze Zahl zu runden.

SELECT commission, ROUND(commission) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28 | +------------+-------+

Verwenden Sie das folgende Beispiel, um die für eine bestimmte Transaktion gezahlte Vergütung auf die erste Dezimalstelle zu runden.

SELECT commission, ROUND(commission, 1) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28.1 | +------------+-------+

Verwenden Sie das folgende Beispiel, um die Genauigkeit wie im vorherigen Beispiel in die entgegengesetzte Richtung zu erweitern.

SELECT commission, ROUND(commission, -1) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 30 | +------------+-------+