在日常查询操作中我们可能会需要某一字段中的空值全部排在最前或者排在最后。可以通过升序把空值排在最后,或者通过降序把空值排在最前。例如在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
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!