`
zhaolei415
  • 浏览: 169380 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

理解内连接和外连接

阅读更多
内连接:进行连接的两个表对应的相匹配的字段完全相同的连接。join

外连接又分为左外连接和右外连接。
左连接即LEFT OUTER JOIN:
两个表进行左连接时会返回左边表中的所有的行和右边表中与之相匹配的列值没有相匹配的用空值代替。

右连接即RIGHT OUTER JOIN:
两个表进行右连接时会返回右边表中的所有的行和左边表中与之相匹配的列值没有相匹配的用空值代替。


我们建立两张表,students、class并插入测试数据
students
---------------------------
id     name     classId
1      name1    1
2      name2    null
3      name3    2
---------------------------

class

-----------------------
id       name
1        class1
2        class2
3        class3
-----------------------


实验结果如下:
mysql> select s.name,c.name from students s join class c where s.classId=c.id ; (注:inner join和join一样) 
+-------+-------+
| name  | class |
+-------+-------+
| name1 | 1     |
| name3 | 2     |
+-------+-------+
2 rows in set

mysql> select s.name,c.name from students s left join class c on s.classId=c.id ; (left join 和 left outer join 一样)
+-------+-------+
| name  | class |
+-------+-------+
| name1 | 1     |
| name2 | NULL  |
| name3 | 2     |
+-------+-------+
3 rows in set

mysql> select s.name,c.name from students s right join class c on s.classId=c.id ; (right join 和 right outer join 一样)
+-------+-------+
| name  | class |
+-------+-------+
| name1 | 1     |
| name3 | 2     |
| NULL  | 3     |
+-------+-------+
3 rows in set


分享到:
评论

相关推荐

    SQL内连接与外连接.pdf

    SQL中的连接操作是数据库查询中不可或缺的部分,...通过理解内连接和外连接,数据库管理员和开发者可以更好地设计查询,以处理复杂的数据库关系,并确保获取所需的信息。掌握这些概念是成为熟练的SQL用户的关键步骤。

    SQL子查询、内连接和外连接查询

    【SQL子查询、内连接和外连接查询】 在SQL中,子查询、内连接和外连接是进行复杂数据检索的关键工具。这些概念的理解和熟练应用对于数据库管理与数据分析至关重要。 **子查询** 是一个嵌套在其他SQL语句中的查询,...

    Hibernate 内连接和左外连接

    本文主要讨论的是内连接(INNER JOIN)和左外连接(LEFT OUTER JOIN)两种类型,并结合实际例子进行详细讲解。 内连接(INNER JOIN)返回两个表中匹配的行。这意味着只有当第一个表的某行与第二个表的某行有匹配的...

    查询语句-内连接外连接的区别

    连接查询有两种:内连接和外连接。内连接使用比较运算符根据每个表共有的列的值匹配表中的行,查询出的结果只包含在满足连接条件的数据。外连接可以是左向外连接、右向外连接或完整外部连接。 左向外连接的结果集...

    理解oracle中的外连接

    在Oracle数据库系统中,外连接(Outer Join)是一种高级的SQL联接操作,它扩展了标准的内连接(Inner Join)概念,允许我们查询不匹配的数据。外连接分为三种类型:左外连接(Left Outer Join)、右外连接(Right ...

    数据库内外连接举例

    主要分为内连接、外连接和交叉连接,每种连接都有其特定的应用场景和逻辑。 内连接(INNER JOIN)是最常见的连接类型,它返回两个表中列相等的行。在内连接中,查询条件通常基于两个表之间的共同列,只有当这些列的...

    用数据实例解说SQL内连接、外连接、全连接、交叉连接的运用与区别.doc

    本文将通过具体的实例,详细解析四种主要的连接类型:内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN),以及如何理解和使用它们。 首先,我们来看内连接(INNER JOIN)。内...

    Oracle外连接查询

    在理解外连接查询之前,我们首先要了解内连接,即最基础的相等连接。内连接查询通过比较两个表中的特定字段值来筛选出匹配的记录,例如`SELECT * FROM A, B WHERE A.id = B.id`,这将返回A表和B表中id字段值相同的...

    Java实现Socket长连接和短连接

    在Java编程中,Socket是网络通信的基础,它允许两个应用程序通过TCP/IP协议进行数据传输。Socket连接分为两种类型:长连接和短连接...通过深入理解这些概念和技术,可以有效地优化网络服务,提升应用的性能和用户体验。

    数据库内连接、外连接.ppt.ppt

    连接类型主要有内连接、外连接和交叉连接,这些方法在数据分析、报表生成和数据整合等场景中发挥着关键作用。 首先,我们来详细讨论内连接(INNER JOIN)。内连接是最常用的连接类型,它返回两个表中满足特定连接...

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

    SQL 中的表连接主要分为三种类型:内连接、外连接和交叉连接。 1. **内连接(INNER JOIN)**: 内连接返回两个表中满足特定条件的匹配行。这种连接类型又可以细分为等值连接、自然连接和不等连接。等值连接基于两个...

    Oracle左(外)、右(外)、全(外)、(内)连接语法与SQL标准的比较

    本文将深入探讨Oracle中的左(外)、右(外)、全(外)以及内连接的语法,并将其与SQL标准进行比较,以帮助读者更好地理解和应用这些关键概念。 ### 左(外)连接(Left Outer Join) #### SQL标准语法 左(外)连接返回左...

    MySQL数据库:外连接.pptx

    MySQL数据库中的外连接是数据查询中的一个重要概念,它允许我们在联接两个或多个表时,不仅包含匹配的行,还包含至少一个表的所有...理解并熟练掌握这两种外连接类型,对于优化查询策略和提供全面的分析结果至关重要。

    SQL 四种连接-左外连接、右外连接、内连接、全连接详解

    SQL中的四种连接方式是数据库操作中非常重要的概念,它们分别是内连接、左外连接、右外连接和全连接。理解这四种连接可以帮助我们更有效地从多个表中提取所需信息。 1. **内连接(Inner Join)** 内连接是最常见的...

    理解oracle中的外连接.doc

    理解oracle中的外连接.doc

    隐式交叉连接和显示链接区别通俗解释以及示例演示

    深入理解SQL隐式连接与显式连接:性能对比与实战演练。对这两种连接方式进行对比分析,并深入探讨...本资源通过全面对比隐式连接和显式连接的异同点,并深入分析它们的性能优劣,帮助读者更好地理解和应用SQL连接操作。

    wifi连接和断开

    总的来说,理解WiFi连接和断开的原理,以及UUID/GUID在其中的作用,对于网络管理员、IT技术人员以及普通用户来说都非常重要。这有助于解决网络连接问题,优化网络体验,以及确保网络安全。在处理WiFi问题时,分析...

    右连接、左连接、全连接、内连接、交叉连接、自连接.pdf

    在SQL查询中,连接(JOIN)是用于...总结起来,理解和熟练运用各种SQL连接是数据库查询和数据整合中的基础技能,可以根据具体需求选择合适的连接类型,以获取期望的结果。在实际工作中,这有助于高效地处理和分析数据。

    HQL连接查询和注解使用总结

    HQL支持多种连接查询方式,包括内连接、左外连接等,并且可以通过`fetch`关键字来明确指定关联级别的查询策略。 #### 各种连接查询详解 - **内连接(Inner Join)** - 语法:`[inner]join` - 描述:内连接只返回...

Global site tag (gtag.js) - Google Analytics