oracle 中null 值对排序的影响

[size=large][color=red]oracle 中null 值对排序的影响[/color][/size]

[size=medium]问题处理:

方法1:使用nvl函数

语法:Nvl(expr1, expr2)

若EXPR1是NULL,則返回EXPR2,否則返回EXPR1.

SELECT NAME,NVL(TO_CHAR(COMM),'NOT APPLICATION') FROM TABLE1;

认识了NVL的语法,就可以在排序中使用,如: ORDER BY NVL(FIELD, '0')

方法2:使用其它函数,如decode,case。

方法3:nulls first或nulls last

语法:
Nulls first:表示null值的记录将排在最前

Nulls last:表示null值的记录将排在最后

--null值始终放在最前面
[/size]
select * from table order by FIELD asc nulls first

--null值始终放在最后面

select * from table order by FIELD asc nulls first

经过上述方法的比较,第三种方法比较方便。

你可能感兴趣的:(sql)