空值排序(oracle和sqlserver)分享


 oracle认为 null 最大。

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

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

    改变空值办法:

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

    替换null: nvl(arg,value)

    (2)用case语法将null转换为一特定值(oracle9i以后版本支持。和sqlserver类似):

    order by (case mycol when null then‘北京漂客’else mycol end)

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

    null值排序的语法

    nulls first :将null排在最前面。如:

    select *

    from mytb

    order by mycol nulls first

    null last :将null排在最后面。如:

    select *

    from mytb

    order by mycol nulls last

    sqlserver 认为 null 最小。

    升序排列:null 值默认排在最前。

    要想排后面,则:order by case when col is null then 1 else 0 end ,col

    降序排列:null 值默认排在最后。

    要想排在前面,则:order   by case when col is null then 0 else 1 end , col desc

    替换null:isnull(arg,value)

—-想了解更多的数据库相关异常处理怎么解决关注<计算机技术网(www.ctvol.com)!!>



本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/dtteaching/79633.html

(0)
上一篇 2020年4月16日
下一篇 2020年4月16日

精彩推荐