Função MAXIMUM( )
Retorna o valor máximo em um conjunto de valores numéricos ou o valor mais recente em um conjunto de valores de datahora.
Sintaxe
MAXIMUM(valor_1; valor_2 <;...n>)
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
valor_1, valor_2<, ...n> |
numérico datahora |
Os valores a serem comparados, separados por pontos e vírgulas ou espaços. Todos os valores devem ser do mesmo tipo de dados. Além disso, os valores de datahora devem ser do mesmo subtipo. Não é possível misturar valores de datas, datahoras ou horas em uma única execução da função. |
Saída
Numérico ou datahora.
Exemplos
Exemplos básicos
Entrada numérica literal
Retorna 7:
MAXIMUM(4; 7)
Retorna 8:
MAXIMUM(4; 7; 3; 8)
Retorna 8,00:
MAXIMUM(4; 7,25; 3; 8)
Entrada de datahora literal
Retorna `20161231`:
MAXIMUM(`20161231`; `20161229`; `20161230`)
Retorna `20161231 23:59:59`:
MAXIMUM(`20161231 235959`; `20161229 235959`)
Retorna `23:59:59`:
MAXIMUM(`.235957`; `.235959`; `.235958`)
Entrada de campo
Retorna a data mais recente entre os três campos para cada registro:
MAXIMUM(Data_Rec; Data_Fatura; Data_Pagamento)
Exemplos avançados
Criação de um campo calculado com um valor padrão mínimo
Se você tiver uma tabela de contas vencidas, crie um campo calculado Juros_a_pagar com um valor mínimo padrão de US$ 1,00:
DEFINE FIELD Juros_a_pagar COMPUTED MAXIMUM(BALANCE * ANNUAL_RATE; 1)
Se o saldo multiplicado pela taxa de juros for menor que 1 dólar, MAXIMUM( ) retornará 1. Caso contrário, MAXIMUM( ) retornará o valor dos juros calculados.
Descobrindo datas além do final de um trimestre
Para descobrir se qualquer data em vários campos é posterior ao final de um trimestre, crie um campo calculado com uma expressão como esta:
DEFINE FIELD Trim_Posterior COMPUTED MAXIMUM(Data_Pedido; Data_Fatura; Data_Pagamento; `20160331`)
- Registros com todas as datas iguais ou anteriores a 31 Mar 2016 retornam `20160331`.
- Registros com uma ou mais datas após 31 Mar 2016 retornam a data mais recente entre os três campos.
Observações
Como as casas decimais funcionam em conjuntos de valores numéricos
Se os valores numéricos sendo comparados não tiverem o mesmo número de casas decimais, o resultado será ajustado para o maior número de casas decimais.
Retorna 20,400:
MAXIMUM(3,682; 10,88; 20,4)
Você pode usar a função DECIMALS( ) para ajustar o número de casas decimais para parâmetros valor.
Retorna 20,40:
MAXIMUM(DECIMALS(3,682; 2); 10,88; 20,4)