`
天梯梦
  • 浏览: 13731094 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

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

阅读更多

首先借用官方的解释下:

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

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

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

比如我们有xs、cj两个表

xs表                                 cj表

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

id     name                     id      score

1      张三                      1       96

2      李四                      2       80

                                    3       86

 

SELECT * FROM `xs` INNER JOIN `cj` ON xs.id = cj.id   
 

返回

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

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

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

 

 SELECT * FROM `xs` LEFT JOIN `cj` ON xs.id = cj.id  
 

返回

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

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

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

 

 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还有另外一种写法,两者是等价的,都是等值连接

 

 SELECT * FROM `xs`,`cj` WHERE xs.id = cj.id  
 

 

 

 

 

 

 

 

 

 

分享到:
评论
1 楼 makemyownlife 2010-08-25  
好久不用左右连接了,看以看那。

相关推荐

    Mysql之innerjoin,leftjoin,rightjoin详解.pdf

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

    MySQL中的JOIN详解及sql实战

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

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

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

    Mysql中Join的使用实例详解

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

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

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

    mysql所有的查询语句详解

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

    mysql基础知识详解,完整ppt

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

    MySql从零开始学-必知必会

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

    MySQL入门学习命令详解

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

    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面试题详解.zip

    - 使用JOIN优化:避免笛卡尔积,合理使用JOIN类型(INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN)。 - 减少子查询,用JOIN替换。 - 使用覆盖索引(covering index)提高查询效率。 7. 视图和存储过程: - ...

    mysql技术详解

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

    MySQL连接查询实例详解

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

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

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

    MySQL的学习使用详解

    ### MySQL学习使用详解 #### 1. 安装MySQL MySQL 的安装分为多个步骤:首先,根据操作系统选择合适的安装包;其次,按照安装向导的提示进行安装;最后,完成安装后配置环境变量并启动MySQL服务。 #### 2. 登录...

    mysql_Query优化

    根据连接条件的不同,JOIN 可分为 INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL OUTER JOIN 等。 **5.2 JOIN 的优化策略** - **选择合适的 JOIN 类型**: 使用 INNER JOIN 而不是子查询,以减少中间结果集。 - **...

    mysql 多表联接查询练习

    ### MySQL多表联接查询详解 #### 一、引言 在实际的数据库操作中,我们经常需要从多个表中获取数据,这时就需要用到多表联接查询。本篇文章将通过具体的练习案例来深入讲解MySQL中的多表联接查询技巧,特别是内联...

    mysql之Linux安装,重点是索引的优化笔记

    ### MySQL之Linux安装与索引优化笔记 #### 一、MySQL简介及Linux版安装 **1. MySQL概述** MySQL是一种关系型数据库管理系统(RDBMS),由瑞典MySQL AB公司开发,目前属于Oracle公司。它是一种开源软件,因其性能...

Global site tag (gtag.js) - Google Analytics