Mysql数据库多表查询 子查询

笛卡儿积

  • 概念:有两个集合A,B,取这两个集合的所有组合情况。

多表查询的分类

  • 内连接查询:

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

      • 语法

        select 字段列表 from 表1,表2 where 条件;
        
    • 显示内连接:

      • 语法

        select 字段列表 from 表名1 [inner] join 表名2 on 条件;
        

    内连接查询注意:

    ​ 1-从那些表中查询数据

    ​ 2-条件是什么

    ​ 3-查询哪些字段

  • 外连接查询:

    • 左外连接 : 查询的是左表所有的数据以及其交集部分。

      • 语法

        select 字段列表 from 表1 left [outer] join 表2 on 条件;
        
    • 右外连接:查询的是右表所有的数据以及其交集部分。

      • 语法

        select 字段列表 from 表1 right [outer] join 表2 on 条件;
        
  • 子查询

    • 概念:查询中嵌套查询,称嵌套的查询为子查询。

    • 子查询的结果是单行单列:

      • 子查询可以作为条件判断,使用运算符进行判断
    • 子查询的结果是多行单列:

      • 子查询可以作为条件判断,使用运算符in判断
    • 子查询的结果是多行多列:

      • 子查询可以作为一张虚拟表

猜你喜欢

转载自blog.csdn.net/weixin_43311669/article/details/107286938