A minimum or maximum function finds the smallest and largest value of a set of values. Use Min/Max functions with Number data types only (with the exception of the Between function, which also accepts string data types).
BETWEEN(x, min, max)
: Tests if a value (x) is between 2 other values (min and max), inclusive of min and max. Returns TRUE if x is between min and max. Returns FALSE if x is not between min and max.
In order for a value to be considered between 2 values, it must be greater than or equal to the min value, and less than or equal to the max value.
All parameters must be a Numeric or String* (including date-time) data type. Blobs and Spatial Objects are not supported. Additionally, all parameters must be in the same data type category. For example, all must be numeric or all must be string/datetime.
For String datatypes, the evaluation is case-blind. For example, "cat" is treated the same as "CAT".
*Complex String Comparison
For more complex string comparisons, for example, strings that use wide or half characters or localized dictionaries, results might be unexpected when it comes to dictionary sort order.
We recommend that you use a combination of the CompareDictionary function or the Sort tool with a specific dictionary specified, in order to ensure accurate results. For example:
CompareDictionary(minString, mystr) && CompareDictionary(mystr,maxString)
BETWEEN(2, 2, 4)
returns TRUE.
BETWEEN(4.56, 4.4, 4.5)
returns FALSE.
BETWEEN("2022-10-31", "2021-01-01", "2021-12-31")
returns FALSE.
BETWEEN(DateTimeAdd("13:05:23", 30, "minutes"), "12:00:00", "14:00:00")
returns TRUE.
BETWEEN("cat", "CAT", "dog")
returns TRUE.
NOT BETWEEN(5, 1, 10)
returns FALSE. 5 is between 1 and 10, therefore the expression evaluates to FALSE because of the NOT operator.
Bound(x, min, max)
: If (x < min) returns min, else if (x > max) return max, else returns (x).
Bound(6,1,5)
returns 5.
Bound(3,1,5)
returns 3.
Max(v0, v1, ..., vn)
: Returns the maximum value from the list.
Max(15, 180, 7, 13, 45, 2, 13)
returns 180.
MaxIDX(v0, v1,..., vn)
: Returns the 0-based index of the maximum value from the list.
MaxIDX(15,180,7,13,45,2,13)
returns 1.
Min(v0, v1,..., vn)
: Returns the minimum value from the list.
Min(15, 180, 7, 13, 45, 2, 13)
returns 2.
MinIDX(v0, v1,..., vn)
: Returns the 0-based index of the minimum value from the list.
MinIDX(15, 180, 7, 13, 45, 2, 13)
returns 5.