SQL Cookbook:二、查询结果排序(1)以指定的次序返回查询结果

问题

    显示部门10中员工的名字、职位和工资,并按照工资的升序排列。结果集如下所示:

ENAME  JOB SAL
----------  --------- ----------
MILLER CLERK 1300
CLARK MANAGER 2450
KING PRESIDENT 5000

解决方案

    使用ORDER BY子句:

select ename,job,sal
from emp
where deptno = 10
order by sal asc

讨论

    使用ORDER BY子句可以对查询结果排序。该解决方案按照SAL的升序对行进行排列。默认情况下,ORDER BY按照升序方式排列,所以ASC子句是可选的。用DESC表示降序排列。

select ename,job,sal
from emp
where deptno = 10
order by sal desc
ENAME  JOB SAL
----------  --------- ----------
KING PRESIDENT 5000
CLARK MANAGER 2450
MILLER CLERK 1300

 

    不一定要指定排序所基于的列名,也可以给出表示这列的编号。该编号从1开始,从左到右依次对应SELECT列表中的各项目。例如:

select ename,job,sal
from emp
where deptno = 10
order by 3 desc
ENAME  JOB SAL
----------  --------- ----------
KING PRESIDENT 5000
CLARK MANAGER 2450
MILLER CLERK 1300

 

    例子中ORDER BY子句中的3与SELECT列表中的第3列想对应,也就是SAL。

版权说明:作者:张颖希PocketZ's Blog
出处:http://www.cnblogs.com/PocketZ
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

本文翻译内容取自网络,纯粹是练习英文水平,如有雷同,纯属意外!有不妥之处,欢迎拍砖!

posted @ 2010-04-25 22:41  pocketz  阅读(363)  评论(0编辑  收藏  举报