首页 > 图灵资讯 > 技术篇>正文

SQL连接查询案例分析

2023-04-14 09:53:23

在前一篇文章中介绍由于SQL连接查询的相关知识,java编程最重要的是练习操作,所以在学习了之前的理论知识之后,本文将讨论具体的操作连接SQL查询案例介绍说明,以下是SQL连接查询案例,列举SQL连接查询七大案例的分析,一起学习

1. 查询每个员工所在部门的名称,要求最终显示员工的名称和相应的部门名称

Note:在查询多个表时,通常会对表起别名。如果两个表中有相同名称的字段,则不知道相同名称的字段属于哪个表。此时,有必要限制该字段属于哪个表,并通过对表起别名进行改进SQL语句效率高,可读性高。

思路分析:Step 1:首先查询员工姓名和部门号;emp 员工表

Step 2:再次查询部门号和部门名称;dept 部门表

select e.ename,d.dname from emp e,dept d;预测查询结果:

验证结果:

结论:为避免笛卡尔积现象的发生,在表连接过程中必须增加限制。

2.找出每个员工对应的工资等级,要求显示员工姓名、工资、工资等级:查询员工姓名、工资

查询工资等级信息

SQL92 语法:

select e.ename,e.sal,s.grade from emp e , salgrade s

where e.sal between s.losal and s.hisal;

SQL99 语法:内部连接中的非等值连接

select e.ename,e.sal,s.grade from emp e inner join

salgrade s on e.sal between s.losal and hisal;

select e.ename,e.sal,s.grade from emp e join salgrade

s on e.sal between s.losal and hisal; //inner 可以省略

3.找出每个员工的上级领导,并要求显示员工姓名和相应的领导姓名:查询员工编号、员工名称、领导编号

查询领导姓名,查询领导姓名编号

SQL92 语法:

select a.ename empname,b.ename leadername from

emp a,emp b

where a.mgr = b.empno;

SQL99 语法:内部连接中的自连接

select a.ename empname ,b.ename leadername from

emp a inner join emp b

on a.mgr = b.empno;

select a.ename empname ,b.ename leadername from

emp a join emp b

on a.mgr = b.empno;//inner 可以省略

4.找出每个员工对应的部门名称,并要求所有部门名称显示:首先查询每个员工对应的部门名称;

查询部门信息;

SQL99 语法:右外连接[右连接]

select e.ename,d.dname from emp e right outer join

dept d on e.deptno = d.deptno;

select e.ename,d.dname from emp e right join dept d

on e.deptno = d.deptno;

//outer 可省略

SQL99 语法:左外连接[左连接]

select e.ename,d.dname from dept d left outer join

emp e on e.deptno = d.deptno;

select e.ename,d.dname from dept d left join emp e

on e.deptno = d.deptno;

//outer 可省略

Note:任何右外连接都可以写成左外连接,任何左外连接都可以写成右外连接;

为什么innner和outer可以省略,加起来有什么好处?答:可以省略,因为区分内外连接不是靠这两个关键词,而是看SQL语句中的left/right关键词;添加left、提高SQL语句可读性的right关键词。

6. 找出每个员工对应的领导名称,要求显示所有员工:

显示每个员工对应的领导名称

SQL99 语法:

select a.ename empname ,b.ename leadername from

emp a left join emp b

on a.mgr = b.empno;

7. 找出每个员工对应的部门名称和相应的工资等级,并要求显示员工姓名、部门名称和工资等级:

查询员工相应的部门编号和工资

查询部门信息

查询工资等级信息

以上就是SQL连接查询案例的说明认为,通过对SQL连接查询的分类和使用基础的理论知识的研究,以及今天七个SQL连接查询案例的介绍,java零基础刚开始的新手朋友也可以学习SQL连接查询的操作。希望大家能在业余时间学习相关信息。java培训课程多练习,逐步提高自己java编程水平。

上一篇 SQL子查询的三种形式
下一篇 SQL连接查询介绍

文章素材均来源于网络,如有侵权,请联系管理员删除。