oracle 中null 值对排序的影响

oracle 中null 值对排序的影响

问题处理:

方法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值始终放在最前面

    select * from table order by FIELD asc nulls first

    --null值始终放在最后面

    select * from table order by FIELD asc nulls first

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

猜你喜欢

转载自pnavy.iteye.com/blog/1872018