round-Funktion (XQuery)
Gibt die Zahl (ohne Stellen hinter dem Dezimalpunkt) zurück, die dem Argument am nächsten kommt. Wenn es mehr als eine solche Zahl gibt, wird diejenige zurückgegeben, die am nächsten an der positiv unendlichen Zahl liegt. Beispiel:
Wenn das Argument 2.5 ist, gibt round() 3 zurück.
Wenn das Argument 2.4999 ist, gibt round() 2 zurück.
Wenn das Argument -2.5 ist, gibt round() -2 zurück.
Wenn das Argument eine leere Sequenz ist, gibt round() die leere Sequenz zurück.
Syntax
fn:round ( $arg as numeric?) as numeric?
Argumente
- $arg
Zahl, auf die die Funktion angewendet wird.
Hinweise
Wenn der Typ von $arg einer der drei numerischen Basistypen xs:float, xs:double oder xs:decimal ist, entspricht der Rückgabetyp dem $arg-Typ. Wenn der Typ von $arg ein Typ ist, der aus einem der numerischen Typen abgeleitet ist, ist der Rückgabetyp der numerische Basistyp.
Wenn die Eingabe in die fn:floor-, fn:ceiling- oder fn:round-Funktionen xdt:untypedAtomic ist (nicht typisierte Daten), wird sie implizit zu xs:double umgewandelt.
Alle anderen Typen führen zum Generieren eines statischen Fehlers.
Beispiele
Dieses Thema enthält XQuery-Beispiele für XML-Instanzen, die in verschiedenen Spalten des xml-Typs in der AdventureWorks-Datenbank gespeichert sind. Einen Überblick über diese Spalten finden Sie unter Darstellung des xml-Datentyps in der AdventureWorks-Datenbank.
Sie können das funktionsfähige Beispiel im Thema ceiling-Funktion (XQuery) für die XQuery-Funktion round() verwenden. Dazu müssen Sie lediglich die ceiling()-Funktion in der Abfrage durch die round()-Funktion ersetzen.
Implementierungseinschränkungen
Es gelten folgende Einschränkungen:
Die round()-Funktion ordnet ganzzahligen Werten xs:decimal zu.
Die round()-Funktion von xs:double- und xs:float-Werten zwischen -0.5e0 und -0e0 werden 0e0 zugeordnet statt -0e0.