[Oracle] LEAST()函数

LEAST() 是 Oracle 中一个非常有用的函数,用于从一组表达式中返回最小值

LEAST()函数会从给定的参数列表中返回最小的值,它与GREATEST()函数正好相反

语法格式

sql 复制代码
LEAST(expr1, expr2 [, expr3, ...])

参数说明

expr1, expr2, ...:要比较的表达式(至少需要两个参数),可以是列名、常量、函数或计算表达式

示例

sql 复制代码
-- 数值比较
SELECT LEAST(10, 20, 5, 30) AS min_value FROM dual;  -- 5

-- 字符串比较
SELECT LEAST('Apple', 'Banana', 'Cherry') AS min_string FROM dual;  -- 'Apple' (按字母顺序比较)

-- 日期比较
-- 结果: 2024-12-31
SELECT LEAST(TO_DATE('2025-01-01', 'YYYY-MM-DD'),
             TO_DATE('2025-02-15', 'YYYY-MM-DD'),
             TO_DATE('2024-12-31', 'YYYY-MM-DD')) AS earliest_date
FROM dual;

-- 混合数据类型比较
SELECT LEAST(100, '200', 300) AS min_value FROM dual;  -- 100 (字符串'200'被隐式转换为数字)

-- 任何参数为NULL则返回NULL
SELECT LEAST(10, 20, NULL, 5) AS min_value FROM dual;  -- NULL

提示Tips

① LEAST()函数如果其任一参数为 NULL,则返回 NULL

② LEAST()函数的参数可以是任何数据类型(数值、字符、日期等)

③ 所有参数应该可以隐式转换为第一个参数的数据类型

尽量比较相同数据类型的值,保持数据类型一致性,隐式转换可能导致意外结果或错误

相关推荐
codigger1 小时前
MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救
数据库·sql·mysql·程序员
麦壳饼1 小时前
SonnetDB 5.0 正式发布:增强 SQL 与事务,开放九模型 MCP 读写
数据库·人工智能·sql·sonnetdb
Decay__10 小时前
18_MySQL 智能巡检方案 —— 巡检项清单 / 一键巡检脚本 / 健康评分
运维·数据库·sql·mysql·架构
java_logo10 小时前
Docker 部署 Liquibase:轻松搭建数据库变更管理
数据库·docker·容器·数据库管理·liquibase·轩辕镜像·数据库变更
凤凰院凶涛QAQ12 小时前
《MySQL内核拆解:从SQL到InnoDB》(四) : 联合查询 & 视图
数据库·sql·mysql
码农小河6612 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库
张小姐的猫12 小时前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
这个DBA有点耶16 小时前
信创场景下数据同步软件怎么选?对比开源CDC与原生闭环工具的结构性差异
数据库·mysql·架构