Relational Data - Functions - Conditional Functions
──────────────────────────────────────────────────────────────────────────┘
:::note The type returned is a DateTime64 as the DataTime32 must be promoted to 64 bit for the comparison. ::: ## least Returns the least across a list of values. All of the list members must be of comparable types. Examples: ```sql SELECT least(1, 2, toUInt8(3), 3.) result, toTypeName(result) type;
┌─result─┬─type────┐ │ 1 │ Float64 │ └────────┴─────────┘
The type returned is a Float64 as the UInt8 must be promoted to 64 bit for the comparison.
SELECT least(['hello'], ['there'], ['world'])┌─least(['hello'], ['there'], ['world'])─┐ │ ['hello'] │ └────────────────────────────────────────┘
SELECT least(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3))┌─least(toDateTime32(plus(now(), toIntervalDay(1))), toDateTime64(now(), 3))─┐ │ 2023-05-12 01:16:59.000 │ └────────────────────────────────────────────────────────────────────────────┘
The type returned is a DateTime64 as the DataTime32 must be promoted to 64 bit for the comparison.
clamp
Constrain the return value between A and B.
Syntax
clamp(value, min, max)Arguments
value– Input value.min– Limit the lower bound.max– Limit the upper bound.
Returned values
If the value is less than the minimum value, return the minimum value; if it is greater than the maximum value, return the maximum value; otherwise, return the current value.
Examples:
SELECT clamp(1, 2, 3) result, toTypeName(result) type;┌─result─┬─type────┐ │ 2 │ Float64 │ └────────┴─────────┘