什么是连接查询?
从一张表中单独查询,称为单表查询。
emp表和dept表联合起来查询数据,从emp表中取员工名字,从dept表中取部门名字。
这种跨表查询,多张表联合起来查询数据,被称为连接查询。
连接查询的分类?
根据语法的年代分类:SQL92:1992年的时候出现的语法SQL99:1999年的时候出现的语法我们这里重点学习SQL99.(这个过程中简单演示一个SQL92的例子)SQL92语法案例:
select e.ename,d.dname
fromemp e, dept d
wheree.deptno = d.deptno;sql92的缺点:结构不清晰,表的连接条件,和后期进一步筛选的条件,都放到了where后面。SQL99语法案例:
select e.ename,d.dname
fromemp e
joindept d
one.deptno = d.deptno;
sql99优点:表连接的条件是独立的,连接之后,如果还需要进一步筛选,再往后继续添加whereSQL99语法:select ...fromajoinbona和b的连接条件where筛选条件
根据表连接的方式分类:
内连接:等值连接非等值连接自连接外连接:左外连接(左连接)右外连接(右连接)全连接(不讲)