美文网首页
多表查询及子查询

多表查询及子查询

作者: 麦子渴望幸福 | 来源:发表于2018-08-19 21:50 被阅读0次

前言

在数据库中我们想查询的数据往往是存在多个独立的表中的,所以客户在浏览器页面操作时,服务器要到数据库中查找相应的内容,这就需要我们在数据库中能查到相应是数据来证实,下面让我们一起来学习多表查询。

多表查询

多表查询分为where条件查询和join连接查询

where条件查询

用法:先做笛卡尔乘积生成一张中间表,再通过where条件过滤生成最终表
缺陷:若量表数据比较庞大的时候,生成的中间表数据量太大,会影响数据库的性能


笛卡尔乘积

使用join

1.内连接
书写方法:Join&inner join
解释:先使用on条件过滤,只显示满足条件的数据,不满足条件的跳过


内连接

2.左外连接
书写方法:Left join
解释:以left join左边的表为主表,左表数据全显示,右表的数据只显示满足条件的,不满足条件的则以null代替


左外连接
3.右外连接
书写方法:Right join
解释:以right join右边的表为主表,右表的数据全部显示,左表的数据只显示满足条件的,不满足条件的则以NULL代替
4.全连接

书写方法:Full join
解释:量表数据全显示,坐标或者右表中没有满足条件的数据,就以NULL代替
总结:
以下表为例:
下表代表全连接的结果
绿色部分代表内连接结果
绿色及以上部分,代表左连接结果
绿色及以下部分,代表右连接结果


全连接

子查询

1.性质

  • 子查询或内部查询或嵌套查询在另一个SQL查询的查询和嵌入式WHERE子句中。
  • 子查询用于返回将被用于在主查询作为条件的数据,以进一步限制要检索的数据。
  • 子查询可以在SELECT,INSERT,UPDATE使用,而且随着运算符如DELETE语句 =, <, >, >=, <=, IN, BETWEEN 等.
    2.书写格式:子查询(sql语句)+空格+别名
子查询

多表关联注意点

1.先画ER图,梳理多表之间的联系


ER图

2.根据多表之间共同的字段写sql关联语句


image.png
3.表名后+空格+别名

4.子查询(sql语句)+空格+别名;


image.png

相关文章

  • 多表查询及子查询

    前言 在数据库中我们想查询的数据往往是存在多个独立的表中的,所以客户在浏览器页面操作时,服务器要到数据库中查找相应...

  • SQL进阶2

    --表连接Join-- 查询所有学生的姓名、年龄及所在班级 使用子查询 使用from多表 使用多表连接 表 in...

  • MySQL多表查询及子查询

    1. MySQL数据库执行查询操作时的查询流程: 请求-->查询缓存请求-->查询缓存-->解析器-->预处理器-...

  • MySQL常用语句

    添加 删除 修改 查询 聚合函数 子查询 多表查询 WHERE子句

  • 多表查询 子查询

    多表查询 连接查询:也可以叫跨表查询,需要关联多个表进行查询 笛卡尔集:select * from student...

  • SQL查询语句1

    复杂查询 = 简单查询 + 限定查询 + 查询排序 + 多表查询 + 分组统计查询 + 子查询。 面对所有的复杂查...

  • MySql : 三、 多表查询和事务

    前言 本篇主要介绍了数据库中多表查询以及事务相关的知识。 目录 一、多表查询二、子查询三、事务 一、多表查询 1....

  • mysql单表查询与多表查询

    单表查询 where group by having distinct order by limit 多表查询 子...

  • mysql数据库-多表查询

    今日任务 完成对MYSQL数据库的多表查询及建表的操作 教学目标 掌握MYSQL中多表的创建及多表的查询 掌握MY...

  • 多表查询与子查询

    多表查询 出于数据库设计的一个考虑,根据业务模块和逻辑的考虑会拆分成不同的表来存储对应的数据,从而降低数据的冗余性...

网友评论

      本文标题:多表查询及子查询

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