MySQL-多表查询

### 多表查询

  * 查询语句

      select

             列明列表

      from

           表明列表

      where ...

     笛卡尔积:

             * 有两个集合A,B。去这两个集合所有组成情况

             * 要完成多表查询,现需要消除无用的数据

     多表查询的分类

          1. 内连接查询:

扫描二维码关注公众号,回复: 4974654 查看本文章

               * 隐式内连接:使用where条件消除无用数据

                  

                * 显示内连接:

                  语法:select 子段列表 from 表名1 [inner] jion 表名2 on 条件;

                        *  SELECT * FROM emp INNER JOIN dept ON emp.`dept_id` = dept.`id`;
                        *  SELECT * FROM emp JOIN dept ON emp.`dept_id` = dept.`id`;

                *  内连接查询:

                    1. 从那些表中查询数据

                    2. 条件是什么

                    3.查询哪些字段

            2. 外连接查询:

                1. 左外连接:

                   * 语法: select 字段列表 from 表1 left join 表2 on 条件;

                   * 查询的是左表所有数据以及其交集部分。

              2. 右外连接:

                   * 语法: select 字段列表 from 表1 right join 表2 on 条件;                 

                   * 查询的是右表所有数据以及其交集部分。

                  

             3. 子查询:

                  概念:查询中嵌套查询,成嵌套查询为子查询;

                    

                    子查询的不同情况

                         1.子查询的结果是单行单列的

                              * 子查询可以作为条件,使用运算符去去判断

                                

                         2.子查询的结果是多行单列

                              

                         3. 子查询的结果是多行多列

                                 

                    

猜你喜欢

转载自www.cnblogs.com/fangyulu/p/10289712.html
今日推荐