oracle 空值处理,排序过滤

简介: oracle认为 null 最大。 升序排列,默认情况下,null值排后面。 降序排序,默认情况下,null值排前面。 有几种办法改变这种情况: (1)用 nvl 函数或decode 函数 将null转换为一特定值 (2)用case语法将null转换为一特定值(oracle9i以后版本支持。和sqlserver类似): order by (case my

oracle认为 null 最大。

升序排列,默认情况下,null值排后面。

降序排序,默认情况下,null值排前面。

有几种办法改变这种情况:

(1)用 nvl 函数或decode 函数 将null转换为一特定值

(2)用case语法将null转换为一特定值(oracle9i以后版本支持。和sqlserver类似):
order by (case mycol when null then ’北京漂客’     else   mycol   end)

(3)使用nulls first 或者nulls last 语法。

这是oracle专门用来null值排序的语法。

nulls first :将null排在最前面。如:select * from mytb order by mycol nulls first

null last :将null排在最后面。如:select * from mytb order by mycol nulls last

目录
相关文章
|
1月前
|
SQL Oracle 关系型数据库
Oracle查询优化-处理空值
【1月更文挑战第1天】【1月更文挑战第1篇】数据库中的空值(例如:NULL或者 '')会导致一些不可预知的错误,因此需要在查询时就要处理好,确保数据查询的准确性,减轻代码压力。
97 0
|
1月前
|
SQL Oracle 关系型数据库
Oracle之如何处理空值
Oracle之如何处理空值
78 0
|
1月前
|
Oracle 关系型数据库 索引
Oracle查询优化-按照子串排序
【1月更文挑战第2天】【1月更文挑战第4篇】有一种速查法就是按照一个字段的某一部分值的顺序记录,这样在查找的时候就可以快速缩小查询范围,例如按电话号码尾号查询。
32 1
|
1月前
|
SQL Oracle 关系型数据库
Oracle之not in中不能存在空值
Oracle之not in中不能存在空值
113 1
|
1月前
|
Oracle 关系型数据库
Oracle查询优化-根据条件取不同列的值排序
【1月更文挑战第3天】【1月更文挑战第9篇】有时排序的要求会比较复杂,比如,领导对工资在 1000 到 2000元之间的员工更感兴趣,于是要求工资在这个范围的员工要排在前面,以便优先查看。这种情况就不仅仅使用ORDER BY了。
145 0
|
1月前
|
Oracle 关系型数据库 数据库
Oracle查询优化-处理排序空值
【1月更文挑战第3天】【1月更文挑战第8篇】在处理Oracle查询结果排序时,如果涉及到空值(null),Oracle提供了一些特定的语法来帮助您控制排序的顺序。
37 0
|
1月前
|
SQL Oracle 关系型数据库
Oracle查询优化-简单排序
【1月更文挑战第1天】【1月更文挑战第3篇】最近在工作中发现Oracle排序对性能影响很大,数据排序被广泛应用于许多SQL查询语句的优化过程中。
52 0
|
7月前
|
Oracle 关系型数据库
ORACLE中null的排序问题
ORACLE中null的排序问题
|
9月前
|
SQL Oracle 关系型数据库
oracle数据库中对汉字跟英文字母混合排序
oracle数据库中对汉字跟英文字母混合排序
61 0
|
Oracle 关系型数据库 数据库管理
Oracle查询优化-02给查询结果排序
Oracle查询优化-02给查询结果排序
117 0

推荐镜像

更多