`
geelong
  • 浏览: 117200 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Mysql之inner join,left join,right join详解 内外连接

阅读更多

Mysql之inner join,left join,right join详解

文章分类:PHP编程

首先借用官方的解释下:

inner join(等值连接):只返回两个表中联结字段相等的行;

left join(左联接):返回包括左表中的所有记录和右表中联结字段相等的记录;

right join(右联接):返回包括右表中的所有记录和左表中联结字段相等的记录。

比如我们有xs、cj两个表

xs表                                 cj表

---------------                  ----------------------

id     name                     id      score

1      张三                      1       96

2      李四                      2       80

                                    3       86

 

Sql代码 复制代码
  1. SELECT  *  FROM  `xs`  INNER   JOIN  `cj`  ON  xs.id = cj.id     
 

返回

------------------------

id   name   id   score
1   张三   1   96
2   李四   2   80

-----------------------

 

Sql代码 复制代码
  1. SELECT  *  FROM  `xs`  LEFT   JOIN  `cj`  ON  xs.id = cj.id    
 

返回

------------------------

id   name   id   score
1   张三   1   96
2   李四   2   80

-----------------------

 

Sql代码 复制代码
  1. SELECT  *  FROM  `xs`  RIGHT   JOIN  `cj`  ON  xs.id = cj.id    
 

 

返回

id       name    id    score
1       张三      1      96
2       李四      2      80
NULL    NULL  3      86

 

其中还有inner join还有另外一种写法,两者是等价的,都是等值连接

 

Sql代码 复制代码
  1. SELECT  *  FROM  `xs`,`cj`  WHERE  xs.id = cj.id   


首先说 内外连接:
  内连接:取的两个表的(有能连接的字段),的交集,即字段相同的。利用内连接可获取两表的公共部分的记录,
      select * from A,B where A.Aid=B.Bnameid
   与 Select * from A JOIN B ON A.Aid=B.Bnameid的运行结果是一样的。
  外连接:左右连接。
分享到:
评论

相关推荐

    Mysql之innerjoin,leftjoin,rightjoin详解.pdf

    Mysql 之 inner join、left join、right join 详解 Mysql 中的连接查询是指从多个表中检索数据,并将它们组合成一个结果集。inner join、left join 和 right join 是 Mysql 中三种最常用的连接查询方式。 inner ...

    SQL联合查询inner join、outer join和cross join的区别详解

    在SQL查询中,联合查询是将两个或多个表格的数据结合在一起的一种方法,主要涉及三种类型的联合:INNER JOIN、OUTER JOIN(包括LEFT JOIN、RIGHT JOIN和FULL JOIN)以及CROSS JOIN。理解这些概念对于数据库开发人员...

    MySQL中的JOIN详解及sql实战

    ### MySQL中的JOIN详解及SQL实战 #### 一、引言 在关系型数据库管理系统(RDBMS)中,数据往往分布在多个表中。为了获取所需的信息,常常需要将这些表组合起来,这时就会用到JOIN操作。JOIN是SQL语言中非常重要的...

    Mysql中Join的使用实例详解

    MySQL提供了多种JOIN类型,包括INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL OUTER JOIN等,来满足不同的查询需求。 本章节主要讲解了在MySQL中使用JOIN进行多表查询的方法,特别是LEFT JOIN和JOIN(通常指的是INNER ...

    MySQL连接查询实例详解

    接下来,我们讨论了左连接(LEFT OUTER JOIN)和右连接(RIGHT OUTER JOIN)。左连接返回左表(在这里是`customers`)的所有行,即使在右表中没有匹配项,结果中也会显示NULL。右连接反之,返回右表的所有行。例如,...

    mysql 参考手册(详解关键字的功能和涉及到的问题)

    有多种类型的JOIN,如INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN,它们在不同的场景下有着不同的应用。 “涉及到的问题”可能涵盖了很多方面,包括但不限于: 1. **并发问题**:在多用户环境中,事务处理和...

    数据库表连接(内外、左右连接).docx

    `SELECT * FROM voteMaster vm LEFT OUTER JOIN voter vt ON vm.id=vt.id UNION ALL SELECT * FROM voteMaster vm RIGHT OUTER JOIN voter vt ON vm.id=vt.id WHERE vm.id IS NULL` 这样的查询可以模拟全外连接的...

    mysql所有的查询语句详解

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,尤其在Web开发中,与Java服务器页面(JSP)结合使用时,它的查询语句是数据交互的核心。在本篇中,我们将深入探讨MySQL在JSP中的所有主要查询语句,以及如何在...

    Mysql连接用法及效率分析.docx

    MySQL提供了多种表连接方式,主要包括内连接(Inner Join)、左连接(Left Join)、右连接(Right Join)等。这些连接方式允许用户根据不同的需求合并多个表中的数据。 #### 二、MySQL连接类型详解 ##### 1. 内...

    mysql基础知识详解,完整ppt

    6. **查询进阶**:这部分可能涵盖JOIN操作(如INNER JOIN、LEFT JOIN、RIGHT JOIN)、子查询、聚合函数(COUNT、SUM、AVG、MAX、MIN)和GROUP BY语句,用于复杂的数据分析。 7. **视图和存储过程**:视图是虚拟的表...

    数据库连接表查询

    内连接(INNER JOIN)是数据库中最常用的连接类型之一,它返回两个表中满足指定连接条件的行。内连接可以分为显式内连接和隐式内连接。 - **显式内连接**:使用 `INNER JOIN` 关键字来实现。 - **隐式内连接**:...

    18道mysql面试题以及答案详解

    3. **多表连接**:MySQL 支持三种主要的连接类型:左连接(LEFT JOIN)、右连接(RIGHT JOIN)和内连接(INNER JOIN)。左连接返回左表的所有记录,即使在右表中没有匹配项。右连接反之,返回右表的所有记录。内连接...

    MySql从零开始学-必知必会

    1. JOIN操作:学习INNER JOIN、LEFT JOIN、RIGHT JOIN和FULL JOIN,合并多表数据。 2. 聚合函数:COUNT、SUM、AVG、MAX、MIN的使用,以及GROUP BY和HAVING子句进行分组与过滤。 3. 子查询:理解嵌套查询,使用子查询...

    PHP5与MYSQL5 WEB开发详解DATABASE1

    4. SQL查询进阶:JOIN操作(INNER JOIN, LEFT JOIN, RIGHT JOIN等)用于联接多个表,子查询用于嵌套查询,聚合函数(COUNT, SUM, AVG, MAX, MIN)用于统计分析。 三、PHP5与MySQL5结合 1. PDO(PHP Data Objects)...

    MySQL入门学习命令详解

    - **联接查询**:INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN等用于合并两个或多个表的数据。 - **子查询**:在SELECT或WHERE子句中嵌套查询,以获取满足特定条件的数据。 8. **视图**:视图是虚拟表,...

    mysql连接查询(左连接,右连接,内连接)

    本文将详细讲解三种基本的连接类型:INNER JOIN(内连接)、LEFT JOIN(左连接)以及RIGHT JOIN(右连接),并提供实例代码以加深理解。 1. INNER JOIN(内连接) INNER JOIN 返回两个表中匹配字段的记录。这意味着...

    mysql技术详解

    - JOIN操作用于合并多个表的数据,LEFT JOIN、RIGHT JOIN、INNER JOIN和FULL JOIN各有应用场景。 - 子查询可以在一个查询中嵌套另一个查询,实现更复杂的逻辑。 4. **存储引擎** - InnoDB是默认的存储引擎,支持...

Global site tag (gtag.js) - Google Analytics