在SQL中可以使用ORDER BY子句对查询的结果进行排序。
例:现在使用查询全部的语句查询表EMP中的所有内容。
l SELECT * FROM emp ;
输出如下:
此时,从查询结果可以发现,是按照雇员的编号进行排序的,那么此时如果要对使用指定的列进行排序,则就必须使用ORDER BY子句。
语法格式如下:
[SELECT] [{DISTINCT}] [* | 具体的列别名 FROM 表名称] [{WHERE 条件(s)}] [{ORDER BY 排序的字段1, 排序的字段2 ASC | DESC}]
例:要求按照工资由低到高排序。
l SELECT * FROM emp ORDER BY sal ;
输出如下:
从表中可以看到表中的内容是按照工资(SAL)的递增顺序进行排列的。
例:上面是按照递增的顺序进行排列的,现在要求使用递减的顺序进行排列。
l ASC:表示递增排列
l DESC:表示递减排列
l SELECT * FROM emp ORDER BY sal ASC ;
输出如下:
可以看到和上面的是一样的工资(SAL)栏中是按递增的顺序排列的
l SELECT * FORM emp ORDER BY sal DESC ;
输出如下:
可以看到工资(SAL)中是按照递减的顺序进行排列的
例:要求查询出10部门的所有雇员信息,查询的信息按照工资由高到低排序,如果工资相等,则按照雇佣日期有早到晚进行排序。
l 此时存在两个排序条件,第一个是降序,第二个是升序。
l SELECT * FROM emp WHERE deptno = 10 ORDER BY sal DESC , hiredate ASC;
输出如下:
排序操作肯定是放在整个SQL语句的最后执行。
在SQL中可以使用ORDER BY子句对查询的结果进行排序。
例:现在使用查询全部的语句查询表EMP中的所有内容。
l SELECT * FROM emp ;
输出如下:
此时,从查询结果可以发现,是按照雇员的编号进行排序的,那么此时如果要对使用指定的列进行排序,则就必须使用ORDER BY子句。
语法格式如下:
[SELECT] [{DISTINCT}] [* | 具体的列别名 FROM 表名称] [{WHERE 条件(s)}] [{ORDER BY 排序的字段1, 排序的字段2 ASC | DESC}]
例:要求按照工资由低到高排序。
l SELECT * FROM emp ORDER BY sal ;
输出如下:
从表中可以看到表中的内容是按照工资(SAL)的递增顺序进行排列的。
例:上面是按照递增的顺序进行排列的,现在要求使用递减的顺序进行排列。
l ASC:表示递增排列
l DESC:表示递减排列
l SELECT * FROM emp ORDER BY sal ASC ;
输出如下:
可以看到和上面的是一样的工资(SAL)栏中是按递增的顺序排列的
l SELECT * FORM emp ORDER BY sal DESC ;
输出如下:
可以看到工资(SAL)中是按照递减的顺序进行排列的
例:要求查询出10部门的所有雇员信息,查询的信息按照工资由高到低排序,如果工资相等,则按照雇佣日期有早到晚进行排序。
l 此时存在两个排序条件,第一个是降序,第二个是升序。
l SELECT * FROM emp WHERE deptno = 10 ORDER BY sal DESC , hiredate ASC;
输出如下:
排序操作肯定是放在整个SQL语句的最后执行。