Sumário

Search

  1. Prefácio
  2. A Linguagem de Transformação
  3. Constantes
  4. Operadores
  5. Variáveis
  6. Datas
  7. Funções
  8. Criação de funções personalizadas
  9. Referência de API da Função Personalizada

Referência de Linguagem de Transformação

Referência de Linguagem de Transformação

AVG

AVG

Retorna a média de todos os valores em um grupo de linhas. Como opção, você pode aplicar um filtro para limitar as linhas lidas para calcular a média. Você pode aninhar apenas uma outra função de agregação dentro de AVG e a função aninhada deverá retornar um tipo de dados Numérico.

Sintaxe

AVG(
numeric_value
[,
filter_condition
] )
A tabela a seguir descreve os argumentos para este comando:
Argumento
Requerido/
Opcional
Descrição
valor_numérico
Requerido
Tipo de dados Numérico. Passa os valores para os quais você deseja calcular uma média. Você pode inserir qualquer expressão de transformação válida.
filter_condition
Opcional
Limita as linhas na pesquisa. A condição de filtro deve ser um valor numérico ou avaliada como TRUE, FALSE ou NULL. Você pode inserir qualquer expressão de transformação válida.

Valor de Retorno

Valor numérico.
NULL se todos os valores passados para a função forem NULL ou se nenhuma linha for selecionada. Por exemplo, a condição de filtro é avaliada como FALSE ou NULL em todas as linhas.
Se o valor de retorno for Decimal com precisão superior a 15, você poderá ativar a alta precisão para garantir precisão decimal de até 38 dígitos.

Nulls

Se um valor for NULL, a função AVG ignorará a linha. No entanto, se todos os valores passados da porta forem NULL, AVG retornará NULL.
Por padrão, o
Serviço de Integração do PowerCenter
trata valores nulos como NULL em funções de agregação. Se você passar uma porta ou um grupo completo de valores nulos, a função retornará NULL. Mas se você configurar o
Serviço de Integração do PowerCenter
, poderá escolher como quer tratar valores nulos em funções de agregação. Você pode tratar valores nulos em funções de agregação como 0 ou como NULL.

Agrupar por

AVG agrupa valores baseados em grupos por portas que você define na transformação, retornando um resultado para cada grupo.
Se não houver grupo por porta, AVG tratará todas as linhas como um grupo, retornando um valor.

Exemplo

A seguinte expressão retorna o custo médio de venda por atacado de lanternas:
AVG( WHOLESALE_COST, ITEM_NAME='Flashlight' )
ITEM_NAME
WHOLESALE_COST
Flashlight
35.00
Navigation Compass
8.05
Regulator System
150.00
Flashlight
29.00
Depth/Pressure Gauge
88.00
Flashlight
31.00
RETURN VALUE:
31.66

Dica

Você pode realizar operação aritmética nos valores passados para AVG antes que a função calcule a média. Por exemplo:
AVG( QTY * PRICE - DISCOUNT )