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

SUM

SUM

Retorna a soma de todos os valores na porta selecionada. Como opção, você pode aplicar um filtro para limitar as linhas lidas para calcular o total. Você pode aninhar apenas uma outra função de agregação dentro de SUM, e a função aninhada deverá retornar um tipo de dados Numérico.

Sintaxe

SUM(
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 que você deseja adicionar. Você pode inserir qualquer expressão de transformação válida. Você pode usar operadores para adicionar valores em portas diferentes.
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 único valor for NULL, SUM irá ignorá-lo. No entanto, se todos os valores passados da porta forem NULL, SUM 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

SUM 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, SUM tratará todas as linhas como um grupo, retornando um valor.

Exemplo

A seguinte expressão retorna a soma de todos os valores maiores que 2000 na porta Vendas:
SUM( SALES, SALES > 2000 )
SALES
2500.0
1900.0
1200.0
NULL
3458.0
4519.0
RETURN VALUE:
10477.0

Dica

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