Fonction round (XQuery)

Retourne le nombre n'ayant pas de partie décimale qui est le plus proche de l'argument. S'il y a plusieurs nombres qui correspondent, le plus proche de l'infini positif est retourné. Exemple :

Si l'argument est 2.5, round() retourne 3.

Si l'argument est 2.4999, round() retourne 2.

Si l'argument est -2.5, round() retourne -2.

Si l'argument est une séquence vide, round() retourne la séquence vide.

Syntaxe

fn:round ( $arg as numeric?) as numeric?

Arguments

  • $arg
    Nombre auquel la fonction est appliquée.

Notes

Si le type de $arg est l'un des trois types de base numériques, xs:float, xs:double ou xs:decimal, le type de retour est identique au type $arg. Si le type de $arg est un type dérivé de l'un des types numériques, le type de la valeur renvoyée est le type numérique de base.

Si l'entrée de la fonction fn:floor, fn:ceiling ou fn:round est xdt:untypedAtomic, des données non typées, elle est implicitement convertie en xs:double.

Tout autre type génère une erreur statique.

Exemples

Cette rubrique propose des exemples de XQuery relatifs à des instances XML stockés dans différentes colonnes de type xml tirées de la base de données AdventureWorks2008R2. Pour obtenir une vue d'ensemble de ces colonnes, consultez Représentation du type de données xml dans la base de données AdventureWorks2008R2.

Vous pouvez utiliser l'exemple fonctionnel de la fonction ceiling (XQuery) pour la fonction XQuery round(). Il vous suffit de remplacer la fonction ceiling() de la requête par la fonction round().

Limitations de l'implémentation

Vous trouverez les limitations ci-dessous :

  • La fonction round() mappe les valeurs entières à xs:decimal.

  • Les valeurs xs:double et xs:float de la fonction round() comprises entre -0.5e0 et -0e0 sont mappées à 0e0 au lieu de -0e0.