Skip to main content

Funções de mín/máx

Uma função de mínimo ou máximo encontra o menor ou o maior valor de um conjunto de valores. Use as funções de mín/máx somente com tipos de dados numéricos (com exceção da função Between, que também aceita tipos de dados de cadeia de caracteres).

Between

BETWEEN(x, min, max) : testa se um valor (x) está entre dois outros valores (min e max), incluindo esses valores de mínimo e máximo. Retorna VERDADEIRO se x estiver entre min e max. Retorna FALSO se x não estiver entre min e max.

  • Para que se considere que um valor esteja entre dois valores, ele deve ser maior ou igual ao valor mínimo e menor ou igual ao valor máximo.

  • Todos os parâmetros devem ser dados do tipo numérico ou cadeia de caracteres* (incluindo data/hora). Blobs e objetos geográficos não são compatíveis. Além disso, todos os parâmetros devem ser da mesma categoria de tipo de dados. Por exemplo, todos devem ser numéricos ou todos devem ser de cadeia de caracteres/data/hora.

  • Para cadeias de caracteres, a avaliação não diferencia maiúsculas de minúsculas. Por exemplo, "gato" é tratado da mesma forma que "GATO".

*Comparação de cadeias de caracteres complexas

Para comparações de cadeias mais complexas, por exemplo, que usam caracteres largos, de meia largura ou dicionários localizados, os resultados podem não ser como o esperado em relação à ordem de classificação de dicionário.

Para garantir resultados mais precisos, recomendamos que você use uma combinação da função CompareDictionary ou da ferramenta Ordenar com um dicionário específico determinado. Por exemplo:

CompareDictionary(minString, mystr) && CompareDictionary(mystr,maxString)

Exemplo

BETWEEN(2, 2, 4) retorna VERDADEIRO.

BETWEEN(4.56, 4.4, 4.5) retorna FALSO.

BETWEEN("2022-10-31", "2021-01-01", "2021-12-31") retorna FALSO.

BETWEEN(DateTimeAdd("13:05:23", 30, "minutes"), "12:00:00", "14:00:00") retorna VERDADEIRO.

BETWEEN("cat", "CAT", "dog") retorna VERDADEIRO.

NOT BETWEEN(5, 1, 10) retorna FALSO. O valor 5 está entre 1 e 10, portanto, a expressão é avaliada como FALSO por causa do operador NOT.

Bound

Bound(x, min, max) : Se (x < min) retorna o mínimo; se (x > max) retorna o máximo; senão, retorna x.

Exemplo

Bound(6, 1, 5) retorna 5.

Bound(3, 1, 5) retorna 3.

Max

Max(v0, v1, ..., vn) : retorna o valor máximo da lista.

Exemplo

Max(15, 180, 7, 13, 45, 2, 13) retorna 180.

MaxIDX

MaxIDX(v0, v1,..., vn) : retorna o índice de base 0 do valor máximo da lista.

Exemplo

MaxIDX(15,180,7,13,45,2,13) retorna 1.

Min

Min(v0, v1,..., vn) : retorna o valor mínimo da lista.

Exemplo

Min(15, 180, 7, 13, 45, 2, 13) retorna 2.

MinIDX

MinIDX(v0, v1,..., vn) : retorna o índice de base 0 do valor mínimo da lista.

Exemplo

MinIDX(15, 180, 7, 13, 45, 2, 13) retorna 5.