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
相关推荐
小冷coding16 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
鲨莎分不晴16 小时前
Redis 基本指令与命令详解
数据库·redis·缓存
专注echarts研发20年17 小时前
工业级 Qt 业务窗体标杆实现・ResearchForm 类深度解析
数据库·qt·系统架构
周杰伦的稻香19 小时前
MySQL中常见的慢查询与优化
android·数据库·mysql
冉冰学姐19 小时前
SSM学生社团管理系统jcjyw(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·学生社团管理系统·多角色管理
nvd1120 小时前
深入分析:Pytest异步测试中的数据库会话事件循环问题
数据库·pytest
appearappear20 小时前
如何安全批量更新数据库某个字段
数据库
·云扬·21 小时前
MySQL 常见存储引擎详解及面试高频考点
数据库·mysql·面试
羊小猪~~21 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
coding-fun1 天前
电子发票批量提取导出合并助手
大数据·数据库