Oracle 中排序碰到 null 值如何处理

一、前言

Oracle 在 Order by 时缺省认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前。

二、使用nulls first 或者nulls last 语法

nulls first 和 nulls last 是Oracle Order by支持的语法。

如果Order by 中指定了表达式Nulls first则表示null值的记录将排在最前(不管是asc 还是 desc)

如果Order by 中指定了表达式Nulls last则表示null值的记录将排在最后 (不管是asc 还是 desc)

使用语法如下:

cpp 复制代码
-- 将 nulls 始终放在最前
select * from zl_cbqc order by cb_ld nulls first

-- 将 nulls 始终放在最后
select * from zl_cbqc order by cb_ld desc nulls last
相关推荐
Hello.Reader5 分钟前
Flink SQL 中的 SELECT DISTINCT批流一体下的去重与状态管理
数据库·sql·flink
隔壁阿布都7 分钟前
MySQL 自动化定期备份及故障恢复
数据库·mysql·自动化
java_logo13 分钟前
GITLAB Docker 容器化部署指南
linux·运维·数据库·docker·容器·eureka·gitlab
zwm_yy15 分钟前
mongodb回顾
数据库·mongodb
半路_出家ren24 分钟前
LNMP环境与应用配置
linux·数据库·mysql·nginx·网络安全·php·lnmp
stone524 分钟前
流段的上游查询
数据库·sql·mysql
曹牧30 分钟前
Oracle:字段值中含有单引号
数据库·oracle
qing2222222234 分钟前
非void函数缺少返回值导致的程序崩溃
数据库
shyの同学40 分钟前
Spring事务:为什么catch了异常,事务还是回滚了?
数据库·spring·事务·spring事务