Skip to main content

Funciones Mín./Máx.

Una función mínima o máxima encuentra el valor más pequeño o más grande de un conjunto de valores. Utiliza funciones Min./Máx. solo con tipos de datos  números (con la excepción de la función Between, que también acepta tipos de datos de cadena).

Between

BETWEEN(x, min, max) : prueba si un valor (x) está entre otros dos valores (mín. y máx.), incluidos mín. y máx. Devuelve verdadero si x está entre mín. y máx. Devuelve falso si x no está entre mín. y máx.

  • Para que un valor se considere entre dos valores, debe ser mayor o igual que el valor mínimo y menor o igual que el valor máximo.

  • Todos los parámetros deben ser un tipo de dato numérico o de cadena* (incluido el tipo de dato de fecha y hora). No se admiten Blob ni objetos espaciales. Además, todos los parámetros deben estar en la misma categoría de tipo de dato. Por ejemplo, todos deben ser numéricos o todos deben ser de cadena/fecha y hora.

  • Para los tipos de datos de cadena, la evaluación no distingue entre mayúsculas y minúsculas. Por ejemplo, “gato” se trata igual que “GATO”.

* Comparación de cadenas complejas

Para comparaciones de cadenas más complejas, por ejemplo, cadenas que utilizan caracteres anchos o a medias o diccionarios localizados, los resultados pueden ser inesperados cuando se trata del orden de clasificación del diccionario.

Te recomendamos que uses una combinación de la función CompareDictionary o la herramienta Ordenar con un diccionario determinado especificado para garantizar resultados precisos. Por ejemplo:

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

Ejemplo

BETWEEN(2, 2, 4) devuelve VERDADERO

BETWEEN(4.56, 4.4, 4.5) devuelve FALSO

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

BETWEENDateTimeAdd("13:05:23", 30, "minutes"), "12:00:00", "14:00:00") devuelve VERDADERO.

BETWEEN("cat", "CAT", "dog") devuelve VERDADERO

NOT BETWEEN(5, 1, 10) devuelve FALSO. 5 está entre 1 y 10; por lo tanto, la expresión se evalúa como FALSE (falso) debido al operador NOT.

Bound

Bound(x, min, max) : si (x < min) devuelve el valor de min, de lo contrario (x > max) devuelve el valor de max, de lo contrario devuelve el valor de (x).

Ejemplo

Bound(6,1,5) devuelve 5.

Bound(3,1,5) devuelve 3.

Max

Max(v0, v1, …, vn) : devuelve el valor máximo de la lista.

Ejemplo

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

MaxIDX

MaxIDX(v0, v1,..., vn) : devuelve el índice con base 0 del valor máximo de la lista.

Ejemplo

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

Min

Min(v0, v1, …, vn) : devuelve el valor mínimo de la lista.

Ejemplo

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

MinIDX

MinIDX(v0, v1,..., vn) : devuelve el índice con base 0 del valor mínimo de la lista.

Ejemplo

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