连接查询

连接查询:又分为内连接查询、外连接查询。

内连接查询:只有满足条件的数据才会显示

例如:查询emp 和 dept 两张表,emp 表中有一条数据没有部门编号 deptno,经过where的条件 emp.deptno=dept.deptno 筛选之后,没有部门编号的数据就不会显示出来。

  select * from emp inner join dept on emp.deptno=dept.deptno;

外连接查询:可控制不满足条件的数据是否显示

  左外连接查询:可以让左表不满足条件的数据显示

    select * from emp left outer join dept on emp.deptno=dept.deptno

  右外连接查询:可以让右表不满足条件的数据显示 

    select * from emp right outer join dept on emp.deptno=dept.deptno

  全外连接查询:可以让左右表不满足条件的数据显示

    select * from emp full outer join dept on emp.deptno=dept.deptno

总结:

内连接查询的方式有两种:1、在from之后跟多张表,通过where子句去掉笛卡尔积

            2、使用inner join 进行连接,在on后面去掉笛卡尔积

通用外连接查询的方式:

  左连接查询:使用 left outer join 进行连接,在on后面去除笛卡尔积

  右连接查询:使用 right outer join 进行连接,在on后面去除笛卡尔积

  全连接查询:使用 full outer join 进行连接,在on后面去除笛卡尔积

posted @ 2019-11-24 13:19  关键的疯狂  阅读(294)  评论(0编辑  收藏  举报