美文网首页java学习记录
Mysql---多表查询和子查询

Mysql---多表查询和子查询

作者: 一花一世界yu | 来源:发表于2020-06-06 16:52 被阅读0次

    一、多表

    1、表与表之间的关系与实现

    1.1、一对一

    实现:在任何一方添加外键指向另一方法的主键

    1.2、一对多

    实现:在多的一方建立外键,指向一的一方的主键

    1.3、多对多

    实现:需要借助第三张中间表。中间表至少要包含两个字段,这两个字段都是外键,分别指向两张主表的主键。

    二、多表查询

    2.1、交叉查询

    语法:select 字段列表 from 表1, 表2;

    交叉查询的结果是笛卡尔积,是两张表所有记录的组成情况。

    我们需要使用条件来去除掉无用的数据。

    2.2、内连接查询

    在交叉查询的基础上使用where条件消除无用的数据

    语法: 1. 隐式内连接

    select 字段列表 from 表1, 表2 where 条件;

    2、显示内连接

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

    2.3、外连接查询

    语法:

    1. 左外连接

    select 字段列表 from 表1 left [outer] join 表2 on 条件;

    2、右外连接

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

    内连接查询的结果是两表的交集

    左外连接查询的结果是左表的全部和两表的交集

    右外连接查询的结果是右表的全部和两表的交集

    三、子查询

    概念:查询中嵌套查询

    相关文章

      网友评论

        本文标题:Mysql---多表查询和子查询

        本文链接:https://www.haomeiwen.com/subject/rpkbahtx.html