Comparteix a través de


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.

Consulte también

Floor (Función) (XQuery)
Función ceiling (XQuery)