在日常查询操作中我们可能会需要某一字段中的空值全部排在最前或者排在最后。可以通过升序把空值排在最后,或者通过降序把空值排在最前。例如在EMP表中MGR字段有空值,ORDER BY的时候通过NULLS FIRST和NULLS LAST实现,查询语句如下:

  

SQL> SELECT ename ,mgr FROM emp WHERE deptno=10 ORDER BY mgr ASC;


ENAME MGR
---------- -----
MILLER 7782
CLARK 7839
KING

 

SQL> SELECT ename ,mgr FROM emp WHERE deptno=10 ORDER BY mgr ASC NULLS FIRST;
ENAME MGR
---------- -----
KING 
MILLER 7782
CLARK 7839

-------------------------------------------------------------------------------------------------------------------------------------------------

 

SQL> SELECT ename ,mgr FROM emp WHERE deptno=10 ORDER BY mgr DESC;


ENAME MGR
---------- -----
KING 
CLARK 7839
MILLER 7782

 

SQL> SELECT ename ,mgr FROM emp WHERE deptno=10 ORDER BY mgr DESC NULLS FIRST;
ENAME MGR
---------- -----
KING 
CLARK 7839
MILLER 7782

 

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/xabi/p/14127317.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!