-
原来多用where是在底层有原因的呀
o where是先过滤再分组,而having是反过来
查看全部 -
还有这种乾坤对调的表达方式呀
o where和having以group by为基点对调
查看全部 -
这个区别倒是蛮意料之外想象之中的
查看全部 -
group by 也是有顺序执行能力的呀
查看全部 -
忽然间明白,这玩意说的就是存在的东西就不能忽略,要不你就别存在的意思吧;
o,select 里面排出的列在group by里面必须体现
查看全部 -
这节课信息量太大了,标重点
还能通过改变过去然后执行上一条来改善现在
查看全部 -
不等值连接
示例:查询员工信息,要求显示:员工号、姓名、月薪、薪水的级别
select e.empno,e.ename,e.sal,s.grade
from emp e,salgrade s
where e.sal between s.losal and s.hisal;
between小值and大值
查看全部 -
NVL函数忽视"虑空"功能;其实是一个替补函数
查看全部 -
连接类型
1、等值连接
示例:查询员工信息、要求显示:员工号、姓名、月薪、部门名称
select e.empno,e.ename,e.sal,d.dname
from emp e,dept d
where e.deptno=d.deptno;
2、不等值连接
3、外连接
4、自连接
查看全部 -
笛卡尔集
每张表的列数相加,行数相乘
为了避免笛卡尔集,可在WHERE加入有效的连接条件
在实际运行下,应避免使用笛卡尔全集
查看全部 -
多表查询
1、什么是多表查询?
2、笛卡尔集
3、等值连接
4、不等值连接
5、外连接
6、自连接
7、层次查询
查看全部 -
sql*plus的报表功能
报表包括:标题、页码、别名等
查看全部 -
group by 语句增强
查看全部 -
分组函数的嵌套
示例:求部门平均工资的最大值
1、通过AVG函数求出每个部门的平均工资
2、嵌套MAX函数求出部门平均工资的最大值
select max(avg(sal)) from emp group by deptno;
查看全部 -
在分组查询中使用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是降序
查看全部
举报