select deptno,avg(sal)
from emp
group by deptno
order by avg(sal);
select deptno,avg(sal) 平均工资
from emp
group by deptno
order by 平均工资;
select deptno,avg(sal) 平均工资
from emp
group by deptno
order by 2;
2指得是第二列;
默认是升序的,降序加上desc
-- a命令 append,指在上行命令下追加
tips:a命令后面的空格一定是2个或者2个以上
"/"---表示执行这条sql语句
******************************************************************************
SQL> select deptno,avg(sal)
2 from emp
3 group by deptno
4 order by avg(sal);
DEPTNO AVG(SAL)
---------- ----------
30 1566.66667
20 2175
10 2916.66667
SQL> select deptno,avg(sal) 平均工资
2 from emp
3 group by deptno
4 order by 平均工资;
DEPTNO 平均工资
---------- ----------
30 1566.66667
20 2175
10 2916.66667
SQL> select deptno,avg(sal) 平均工资
2 from emp
3 group by deptno
4 order by 2;
DEPTNO 平均工资
---------- ----------
30 1566.66667
20 2175
10 2916.66667
SQL> a desc
4* order by 2 desc
SQL> /
DEPTNO 平均工资
---------- ----------
10 2916.66667
20 2175
30 1566.66667
a命令,append,表示在上条语句后面追加,
a desc,两个中间必须有两个以上空格。否则就相当于order by 2desc.
排序的时候,可以写成order by 2这种,第二列;
若写不存在的列,会出现如图的报错(order by 项必须是select-list 表达式的数目)
在分组查询中使用order by子句
示例:求每个部门的平均工资,要求显示:部门号,部门的平均工资,并按照工资升序排列
可以按照:列、别名、表达式、序号进行排序
select deptno,avg(sal) from emp group by deptno order by avg(sal);
select deptno,avg(sal) 平均工资 from emp group by deptno order by 平均工资;
select deptno,avg(sal) 平均工资 from emp group by deptno order by 2;(平均工资在SELECT 语句中的第二列);
sqlplus的另一个小技能: a命令:-append;a命令表示在上一条命令后面追加语句,a命令后必须跟两个或两个以上的空格,若只打一个空格则追加语句紧跟上一条语句最后一个单词拼接
在分组查询中使用排序,order by 2,
2表示表达式中的字段位置
order by desc降序
a命令的先天缺陷需要后天去改
sql plus还真是 骚操作挺多 ed编辑 /执行历史
1、2、3直接表列,当然这是sql通用的
在分组查询中使用order by 子句
示例:求每个部门的平均工资,要求显示:部门号,部门的平均工资,并按照工资升序排列
可以按照:列、别名、表达式、序号进行排序
select deptno,avg(sal) from emp group by deptno order by avg(sal);
select deptno,avg(sal) 平均工资 from emp group by deptno order by 平均工资;
select deptno,avg(sal) 平均工资 from emp group by deptno order by 2;(平均工资在SELECT 语句中的第二列)
默认是升序,desc是降序
order by 可以根据 列名、别名、select后的序号、表达式排列
默认按照降序排列 desc升序
select deptno,avg(sal) 平均工资 from emp group by deptno order by 平均工资 = select deptno,avg(sal) 平均工资 from emp group by deptno order by 2
orderby可以根据列,别名,表达式,序号进行排序
1.select deptno,avg(sal)平均工资 from emp group by deptno
order by 平均工资
*平均工资是avg(sal)的别名,order by语句可以直接使用别名,默认按升序排序
2.select deptno,avg(sal)平均工资 from emp group by deptno
order by 2
*select语句第二列是平均工资,所以order by语句后面直接写2也是跟第一条语句执行结果一样
a命令-append
a命令表示在上一条命令后面追加语句
a命令后必须跟两个或两个以上的空格,若只打一个空格则表示追加语句紧跟上一条语句
实例 a desc:order by 2desc
实例 a desc:order by 2 desc
a(2个或两个以上空格) desc
在之前的sql语句上添加a命令
order by +字段 +升序/降序
order by 数字 +升序/降序
1.select deptno,avg(sal)平均工资 from emp group by deptno
order by 平均工资
*平均工资是avg(sal)的别名,order by语句可以直接使用别名,默认按升序排序
2.select deptno,avg(sal)平均工资 from emp group by deptno
order by 2
*select语句第二列是平均工资,所以order by语句后面直接写2也是跟第一条语句执行结果一样,是按照平均工资排序的。
3.使用a 命令给上一语句后面加一个降序排序,那需要在a命令后面写2个空格才能成功(2个以上)
a desc
orderby可以根据列,别名,表达式,序号进行排序。
a命令:在之前的sql语句上添加
a命令-append
a命令表示在上一条命令后面追加语句
a命令后必须跟两个或两个以上的空格,若只打一个空格则表示追加语句紧跟上一条语句
实例 a desc:order by 2desc
实例 a desc:order by 2 desc
order by可以按照列,别名,表达式,序号进行排序
append的命令为a 追加命令行,a后面使用2个及以上的空格才能使命令生效
select deptno ,avg(sal) 平均工资
from emp
group by deptno
order by 2 ---这里代表第二个元素 也可以改成 别名 平均工资 结果一样 或者直接把函数复制过来
desc降序