round (función de XQuery)

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.

Notas

Si el tipo de $arg es uno de los tres tipos numéricos base (xs:float, xs:double o xs:decimal), el tipo de valor devuelto es igual al 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 de la función fn:floor, fn:ceiling o fn:round es xdt:untypedAtomic, es decir, datos sin tipo, se convierte implícitamente a xs:double.

Cualquier otro tipo genera un error estático.

Ejemplos

En este tema se ofrecen ejemplos de consultas XQuery con instancias XML almacenadas en varias columnas de tipo xml en la base de datos AdventureWorks. Para obtener información general de estas columnas, vea Representación de tipo de datos xml en la base de datos AdventureWorks.

Puede utilizar el ejemplo de trabajo de ceiling (función de XQuery) para la función round() de XQuery. Todo lo que tiene que hacer es sustituir 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 los valores enteros a xs:decimal.
  • La función round() asigna los valores xs:double y xs:float entre -0.5e0 y -0e0 a 0e0 en lugar de a -0e0.

Vea también

Referencia

floor (función de XQuery)
ceiling (función de XQuery)

Ayuda e información

Obtener ayuda sobre SQL Server 2005