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)

使用语法如下:

-- 将 nulls 始终放在最前
select * from zl_cbqc order by cb_ld nulls first

-- 将 nulls 始终放在最后
select * from zl_cbqc order by cb_ld desc nulls last

你可能感兴趣的:(Oracle数据库,oracle,数据库)