Ir para conteúdo principal Pular para conteúdo complementar

RangeAvg – função de script e gráfico

RangeAvg() retorna a média de um intervalo. A entrada para a função pode ser um intervalo de valores ou uma expressão.

Sintaxe:  

RangeAvg(first_expr[, Expression])

Tipo de dados de retorno: numérico

Argumentos:  

Os argumentos dessa função podem conter funções interregistro, que por si só retornam um intervalo de valores.

Argumentos
Argumento Descrição
first_expr A expressão ou campo que contém os dados a serem medidos.
Expression Expressões ou campos opcionais que contêm o intervalo de dados a ser medido.

Limitações:  

Se não for encontrado nenhum valor numérico, será retornado NULL.

Exemplos e resultados:  

Exemplos de scripts
Exemplos Resultados
RangeAvg (1,2,4)

Retorna 2,33333333

RangeAvg (1,'xyz') Retorna 1
RangeAvg (null( ), 'abc') Retorna NULL

Exemplo:  

Adicione o script de exemplo ao seu aplicativo e execute-o. Para ver o resultado, adicione os campos listados na coluna de resultados a uma pasta no seu aplicativo.

RangeTab3:

LOAD recno() as RangeID, RangeAvg(Field1,Field2,Field3) as MyRangeAvg INLINE [

Field1, Field2, Field3

10,5,6

2,3,7

8,2,8

18,11,9

5,5,9

9,4,2

];

A tabela resultante mostra os valores retornados de MyRangeAvg para cada um dos registros na tabela.

Tabela resultante
RangeID MyRangeAvg
1 7
2 4
3 6
4 12.666
5 6.333
6 5

Exemplo com a expressão:

RangeAvg (Above(MyField),0,3))

Retorna uma média variável do resultado do intervalo dos três valores de MyField calculado na linha atual e nas duas linhas acima da atual. Ao especificar o terceiro argumento como 3, a função Above() retorna três valores, em que há linhas suficientes acima, que são tomadas como entrada na função RangeAvg().

Dados usados nos exemplos:

Nota de dicaDesative a classificação de MyField para garantir que o exemplo funcione como esperado.
Dados de exemplo
MyField RangeAvg (Above(MyField,0,3)) Comments
10 10 Com esta é a linha do topo, o intervalo consiste em apenas um valor.
2 6 Há apenas uma linha acima desta linha e, portanto, o intervalo é: 10,2.
8 6.6666666667 O equivalente a RangeAvg(10,2,8)
18 9.333333333 -
5 10. 333333333 -
9 10.6666666667 -

RangeTab:

LOAD * INLINE [

MyField

10

2

8

18

5

9

] ;

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!