Partilhar via


Funções de Valores Numéricos – round

Aplica-se: SQL Server

Retorna o número que não tem uma parte fracionária mais próxima do argumento. Se houver mais de um número semelhante a esse, o que for mais próximo ao infinito positivo será retornado. Por exemplo:

Se o argumento for 2,5, round() retornará 3.

Se o argumento for 2,4999, round() retornará 2.

Se o argumento for -2,5, round() retornará -2.

Se o argumento for uma sequência vazia, round() retorna a sequência vazia.

Sintaxe

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

Argumentos

$arg
Número ao qual a função é aplicada.

Comentários

Se o tipo de $arg for um dos três tipos de base numérica, xs:float, xs:double ou xs:decimal, o tipo de retorno será igual ao tipo $arg. Se o tipo de $arg for um tipo derivado de um dos tipos numéricos, o tipo de retorno será o tipo numérico base.

Se a entrada para as funções fn:floor, fn:ceiling ou fn:round for xdt:untypedAtomic, dados não tipados, ela será implicitamente convertida em xs:double.

Qualquer outro tipo gera um erro estático.

Exemplos

Este tópico fornece exemplos de XQuery em relação a instâncias XML armazenadas em várias colunas de tipo xml no banco de dados AdventureWorks.

Você pode usar o exemplo de trabalho na função ceiling (XQuery) para a função XQuery round(). Tudo o que você precisa fazer é substituir a função ceiling() na consulta pela função round().

Limitações de implementação

Estas são as limitações:

  • A função round() mapeia valores inteiros para xs:decimal.

  • A função round() de xs:double e xs:float valores entre -0.5e0 e -0e0 são mapeados para 0e0 em vez de -0e0.

Confira também

Função floor (XQuery)
Função de teto (XQuery)