Funciones de valores numéricos: round
Se aplica a:SQL Server
Devuelve el número que no tiene una parte fraccionaria más próxima al valor del argumento. Si hay más de un número con esta característica, se devuelve el más próximo al infinito positivo. Por ejemplo:
Si el argumento es 2.5, round() devuelve 3.
Si el argumento es 2.4999, round() devuelve 2.
Si el argumento es -2.5, round() devuelve -2.
Si el argumento es una secuencia vacía, round() devuelve la secuencia vacía.
Sintaxis
fn:round ( $arg as numeric?) as numeric?
Argumentos
$arg
Número al que se aplica la función.
Comentarios
Si el tipo de $arg es uno de los tres tipos base numéricos, xs:float, xs:double o xs:decimal, el tipo de valor devuelto es el mismo que el tipo de $arg . Si el tipo de $arg es un tipo derivado de uno de los tipos numéricos, el tipo de valor devuelto es el tipo numérico base.
Si la entrada a las funciones fn:floor, fn:ceiling o fn:round es xdt:untypedAtomic, datos sin tipo, se convierte implícitamente en xs:double.
Cualquier otro tipo genera un error estático.
Ejemplos
En este tema se proporcionan ejemplos de XQuery en las instancias XML almacenadas en varias columnas de tipo xml de la base de datos AdventureWorks.
Puede usar el ejemplo de trabajo en la función de techo (XQuery) para la función round() XQuery. Lo único que tiene que hacer es reemplazar la función ceiling() de la consulta por la función round().
Limitaciones de la implementación
Éstas son las limitaciones:
La función round() asigna valores enteros a xs:decimal.
La función round() de los valores xs:double y xs:float entre -0,5e0 y -0e0 se asignan a 0e0 en lugar de -0e0.