内链接 ----select --- from table1 join table2 on 条件
自连接 ---select --- from table1 join table1 on 条件
右外连接 ----select --- from table1 right join table2 on 条件 ; 会把右边的表所查询的元素全部显示出来,不管条件有没有包含
左外链接 ----select --- from table1 left join table2 on 条件 ; 会把左边的表所查询的元素全部显示出来,不管条件有没有包含
部门表
员工表
工资等级表
查询每一个员工所在的部门名称,要求最终显示员工姓名和 对应的部门名称(内连接:等值)
select e.ename,d.dname from emp e join dept d on e.deptno = d.deptno;
找出每一个员工对应的工资等级,要求显示员工姓名、工资、 工资等级(内连接:非等值)
select e.ename,e.sal,s.grade from emp e JOIN salgrade s on e.sal BETWEEN s.losal and s.hisal;
找出每一个员工的上级领导,要求显示员工姓名及对应的领 导姓名(内连接:自连接)
select a.ename,b.ename from emp a join emp b on a.mgr = b.empno;
找出每一个员工对应的部门名称,要求部门名称全部显示 (左/右外连接)
select e.ename,d.dname from emp e right JOIN dept d on e.deptno=d.deptno;
select e.ename,d.dname from dept d left JOIN emp e on e.deptno=d.deptno;
注意:仸何一个右外连接都可写成左外连接,仸何一个左外连接都可写成右外连接;