Função avg (XQuery)

Retorna a média de uma sequência de números.

Sintaxe

fn:avg($arg as xdt:anyAtomicType*) as xdt:anyAtomicType?

Argumentos

  • $arg
    A sequência de valores atômicos cuja média é calculada.

Comentários

Todos os tipos dos valores atomizados passados para avg() precisam ser um subtipo igual a um dos três tipos básicos numéricos internos ou xdt:untypedAtomic. Eles não podem ser uma combinação disso. Valores do tipo xdt:untypedAtomic são tratados como xs:double. O resultado de avg() recebe o tipo base dos tipos passados como xs:double no caso de xdt:untypedAtomic.

Se a entrada estiver estaticamente vazia, o vazio será implícito e um erro estático será gerado.

A função avg() retorna a média dos números calculados. Por exemplo:

sum($arg**) div count($arg)**

Se $arg for uma sequência vazia, a sequência vazia será retornada.

Se um valor xdt:untypedAtomic não puder ser convertido em xs:double, o valor será desconsiderado na sequência de entrada, $arg.

Em todos os outros casos, a função retorna um erro estático.

Exemplos

Este tópico fornece exemplos de XQuery em instâncias XML armazenadas em várias colunas do tipo xml no banco de dados AdventureWorks2008R2. Para obter uma visão geral de cada uma dessas colunas, consulte Representação de tipo de dados xml no banco de dados do AdventureWorks2008R2.

A. Usando a função avg () XQuery para encontrar locais de centro de trabalho no processo industrial no qual horas de trabalho são maiores que a média para todos os locais de centro de trabalho.

Você pode reescrever a consulta fornecida na função min (XQuery) para usar a função avg().

Limitações de implementação

Estas são as limitações:

  • A função avg() mapeia todos os números inteiros para xs:decimal.

  • A função avg() em valores do tipo xs:duration não dá suporte.

  • Não há suporte para sequências que misturam tipos nos limites de tipo base.

Consulte também

Referência