`
ttcoool
  • 浏览: 8961 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

mysql的多表关联

 
阅读更多

    数据库中经常要用到多个表的关联。mysql的关联主要包括inner join,left join,right join三种,下面分别加以介绍,并举例说明。

    顾名思义,inner join集合了两个表的信息,只有都包含的才关联在一起。

    left join以第一个表为准,后一个表信息不完整记为NULL

    right join以第二个表为准,前一个表信息不完整记为NULL

    此外要注意,一个关联条件对应到表中可能对应好几条信息,这样需要将这些信息都关联出来。

    举例说明:

    建立如下三张表article,us,type:

    

 

 


 
 下面只详细介绍右关联,其他的关联只给出语句以及最后的结果。

首先做前两张表的右关联

select article.aid,article.title,us.username from article right join us on article.uid=us.uid;

 由于是有关联,是以us表为准的。us.uid为1的在article中有两项结果,而us.uid为3的在article中没有,所以最后得到的结果如下:



 接着在这个结果上继续右关联type表

select article.aid,article.title,us.username,type.typename from article right join us on article.uid=us.uid right join type on article.tid=type.tid;

 此时将以type表为准,对于上面的关联结果,实际上aid1->tid:1,aid2->tid:2,aid3->tid:1,所以最后得到结果如下:



 对于inner join和left join,和上面类似,就介绍简单的两表关联吧。



 



 注意这里第一个表是:us

 

  • 大小: 3 KB
  • 大小: 2.4 KB
  • 大小: 2.2 KB
  • 大小: 2.6 KB
  • 大小: 3.1 KB
  • 大小: 4 KB
  • 大小: 4.2 KB
分享到:
评论

相关推荐

    MySQL 多表关联一对多查询实现取最新一条数据的方法示例

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法。分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据,数据出现重复 ...

    Mysql多表联合查询

    MySql,多表联合查询加AS语句,多余的就不说了,自己看,绝对简单!

    图文详解MySQL中两表关联的连接表如何创建索引

    首先,我们考虑一个典型的多表关联场景,用户表(user)与部门表(dept)通过一个关联表(deptuser)进行连接。在这个场景下,我们需要决定在deptuser表中为哪些字段创建索引。通常,我们可以选择创建单列索引或组合索引。...

    mysql实现多表关联统计(子查询统计)示例

    在MySQL数据库中,进行多表关联统计是常见的需求,特别是在数据分析和业务报表中。本示例探讨了如何处理涉及四个表的复杂统计问题,包括`book`(书本表)、`orders`(订单表)、`reward_log`(打赏表)和`consume_...

    多表关联更新数据

    sqlserver,oracle,mysql多表关联更新数据

    kettle全量多表数据同步

    ### Kettle全量多表数据同步 #### 一. 建立资料库 在进行全量多表数据同步之前,首先需要建立一个资源库来存放所有的转换和作业。资源库是Kettle的一个核心概念,它用于存储和管理转换、作业和其他与数据处理相关...

    Mysql省市区关联

    Mysql省市区关联,项目中需要用到省市区的表,找到了现行省市区规划的Excel,之后用java读取解析后载入到了数据库中。 分为【sys_province】【sys_city】【sys_county】三表。 三个表均加了是否有效,喜好排序,等...

    mysql多表查询和EXISTS查询性能对比

    NOT IN 是一种常见的排除条件查询方式,在多表关联查询中用于排除特定记录。例如,如果想要找出表A中的记录,但排除那些在表B中存在的记录,则可以使用如下SQL语句: ```sql SELECT * FROM tableA WHERE tableA.id ...

    MySQL SQL多表关联查询最佳实例

    Mysql学习中 ,单表查询每个人都很...但是多表之间的关联查询对于初学者是很难掌握的,以下是我学习中,结合老师所讲例子作的总结,主要就是三张表的关联查询。还包括group by操作。Join on;left join on;group by。

    MYSQL8.0练习题表清单和关联关系

    用户MySQL8.0练习的表清单和关联关系图

    如何实现多数据表关联呢?Delphi的方法实例..rar

    3. **关联字段(Foreign Key)**:多表关联的基础是外键,它在一个表中的字段引用另一个表的主键。在Delphi中,可以设置TTable组件的ForeignFieldNames属性来指定关联的字段。 4. **SQL JOIN操作**:在SQL中,JOIN...

    MongoDB多表关联查询操作实例详解

    首先,我们回忆一下,MySQL多表关联查询的语句: student表: calss表: 通过student的classId关联进行查询学生名称,班级的数据: SELECT student.name,student.age,class.name FROM student,class WHERE student...

    全国行政区域省市区代码 MySQL多表设计+数据

    本案例中的"全国行政区域省市区代码 MySQL多表设计+数据"是一个典型的地理信息存储方案,适用于构建诸如人口统计、物流配送、销售分析等系统。下面我们将深入探讨这个主题。 首先,我们看到有三个SQL脚本文件:`...

    MySQL三种关联查询的方式_ ON vs USING vs 传统风格

    尽管这是一个相对简单的例子,但如果涉及到更多表和更复杂的过滤条件时,这样的查询可能变得非常混乱。 #### 2. ANSI风格:ON 关键字 为了解决传统风格带来的问题,ANSI标准引入了一种更清晰的方式来表示表间的...

    mysql多表联合查询

    mysql多表联合查询 表连接的约束条件 MySQL如何优化LEFT JOIN和RIGHT JOIN

    mysql关联查询

    MySQL关联查询是数据库操作中的重要概念,用于在多个表之间建立连接,以便从不同表中检索相关数据。关联查询能够让我们在单个SQL语句中处理来自多个表的数据,极大地提高了数据查询的效率和灵活性。这里我们将深入...

    Spring boot2基于Mybatis实现多表关联查询

    Spring Boot 2 基于 MyBatis 实现多表关联查询 Spring Boot 2 是目前非常流行的 Java 框架,它提供了许多强大的功能,例如自动配置、 starters 机制等。MyBatis 是一个流行的持久层框架,提供了强大的数据库交互...

Global site tag (gtag.js) - Google Analytics