RangeMode – função de script e gráfico
RangeMode() encontra o valor mais geralmente ocorrido (valor de modo) na expressão ou campo.
Sintaxe:
RangeMode(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.
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 houver mais de um valor com a maior frequência, será retornado NULL.
Exemplos e resultados:
Exemplos | Resultados |
---|---|
RangeMode (1,2,9,2,4) |
Retorna 2 |
RangeMode ('a',4,'a',4) |
Retorna NULL |
RangeMode (null( )) |
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, RangeMode(Field1,Field2,Field3) as MyRangeMode 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 deMyRangeMode para cada registro na tabela.
RangeID | MyRangMode |
---|---|
1 | - |
2 | - |
3 | 8 |
4 | - |
5 | 5 |
6 | - |
Exemplo com a expressão:
RangeMode (Above(MyField,0,3))
Retorna o valor mais comumente ocorrido nos três resultados de MyField avaliado na linha atual e 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 RangeMode().
Dados usados no exemplo:
RangeTab:
LOAD * INLINE [
MyField
10
2
8
18
5
9
] ;
MyField | RangeMode(Above(MyField,0,3)) |
---|---|
10 | Retorna 10 porque não existem linhas acima, portanto o valor único é o que ocorre mais comumente. |
2 | - |
8 | - |
18 | - |
5 | - |
9 | - |