目录
显示员工FORD的上级领导的编号和姓名(mgr是员工领导的编号)
前言:
前面文章分享了mysql对一张表的查询,但在实际开发中是远远不够的,本篇博客提供sql数据,大家可以到本地MySQL执行语法后,跟着文章一起练练手
多表查询:
实际开发过程中,数据往往来自不同的表,所以需要多表查询。
本篇博客用一个简单的公司管理系统来作为分享,其中有三张表 EMP,DEPT,SALGREADE来演示如何多表查询
显示雇员名、雇员工资以及所在部门的名字因为上面的数据来自EMP和DEPT表,因此要联合查询
先看看EMP表:
再看一眼DEPT表:
对他们进行联合查询 select *from EMP,DEPT:
select *from EMP,DEPT;
可以得出结论,如果没有附加条件的联合查询,呈现出的结果就是两张表的笛卡尔积
但是其实我们只要emp表中的deptno = dept表中的deptno字段:
select EMP.ename, EMP.sal, DEPT.dname from EMP, DEPT where EMP.deptno =
DEPT.deptno;
显示部门号为10的部门名,员工名和工资 :
select DEPT.dname,EMP.ename,EMP.sal from EMP,DEPT
where EMP.deptno = DEPT.deptno and EMP.deptno = 10;
显示各个员工的姓名,工资,及工资级别:
先看一下工资级别表SALGRADE:
select EMP.ename,EMP.sal,salgrade.grade from EMP,SALGRADE
where EMP.sal between SALGRADE.losal and SALGRADE.hisal;
自连接
自连接 是指在同一张表连接查询:
案例: