LEAST用于比较一组值,并返回其中的最小值。
命令格式
least(<var1>, <var2>[,...])
参数说明
var :必填,输入值。BIGINT、DOUBLE、DECIMAL、DATETIME、DATE或STRING类型。
返回值说明
返回输入参数中的最小值。
当输入参数数据类型相同时,返回值同输入参数数据类型。
当输入参数数据类型不相同时,会进行隐式转换,规则如下:
DOUBLE、BIGINT、STRING之间的比较会转换为DOUBLE类型。
DECIMAL、DOUBLE、BIGINT和STRING之间的比较会转换为DECIMAL类型。
STRING、DATETIME的比较会转换为DATETIME类型。
说明当输入格式为
yyyy-mm-dd hh:mi:ss
的STRING类型,且MaxCompute项目的数据类型版本是1.0时,则会隐式转换为DATETIME类型后参与运算。数据类型版本设置请参见1.0数据类型版本。
NULL值默认为最小值。当所有参数输入为NULL,返回结果为NULL。
使用示例
-- 返回2。
SELECT least(5, 2, 7);
-- 返回1.1111。
SELECT least(3,2.5,'1.1111');
-- 返回12345678901234567890.123456789012345679。
SELECT least(12345678901234567890.12345678901234567890,12345678901234567890.523456789012345679BD);
-- 返回2025-07-01 12:00:00。
set odps.sql.type.system.odps2=false;
SELECT LEAST(datetime'2025-07-01 12:00:00', '2025-07-02 12:00:00') AS result;
-- 返回2025-02-02。
SELECT LEAST(date'2025-10-01', date'2025-10-03',date'2026-01-01',date'2025-02-02') AS result;
相关函数
LEAST函数属于数学函数,更多数据计算、数据转换的相关函数请参见数学函数。
该文章对您有帮助吗?