打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
空值排序(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)

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Oracle 空值的排序问题 (转载)
Oracle学习笔记系列(三)之SQL条件查询
sqlserver 转 oracle 所需要注意的事项
oracle使用order by排序null值如何处理
05 索引
Mysql,SqlServer,Oracle,sqlite 主键自动增长的设置
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服