`

数据库基础のLeft Jion,Right Jion,Inner Jion,联合查询

阅读更多

 

CREATE TABLE testA
aID int( 1 ) AUTO_INCREMENT PRIMARY KEY ,
aNum char( 20 )
)
CREATE TABLE testB(
bID int( 1 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
bName char( 20 )
) 

表testA记录如下:
aID aNum
1   a11
2   a22
3   a33
4   a44
5   a55

表testB记录如下:
bID bName
1   b11
2   b22
3   b33
4   b44
8   b88 

   

1.left join(左联接)

sql语句如下:
SELECT * FROM testA LEFT JOIN testB ON testA.aID = testB.bID

结果如下:
aID aNum bID bName
1   a11  1    b11
2   a22  2    b22
3   a33  3    b33
4   a44  4    b44
5   a55  NULL NULL

left join是以A表的记录为基础的,testA可以看成左表,testB可以看成右表,左表(testA)的记录将会全部表示出来,而右表(testB)只会显示符合搜索条件的记录(例子中为: testA.aID = testB.bID). testB表记录不足的地方均为NULL.

 

 2.right join(右联接)

sql语句如下:
SELECT * FROM testA RIGHT JOING testB ON testA.aID = testB.bID

结果如下:
aID aNum bID bName
1    a11  1   b11
2    a22  2   b22 
3    a33  3   b33 
4    a44  4   b44 
NULL NULL 8   b88

仔细观察一下,就会发现,和left join的结果刚好相反,这次是以右表(testB)为基础的,testA表不足的地方用NULL填充.

 

3.inner join(相等联接或内联接)

sql语句如下:
SELECT * FROM testA INNER JOIN testB ON testA.aID = testB.bID

等同于以下SQL句:
SELECT * FROM testA,testB WHERE testA.aID = testB.bID

结果如下:
aID aNum bID bName
1    a11  1   b11         
2    a22  2   b22        
3    a33  3   b33        
4    a44  4   b44         

 很明显,这里只显示出了 testA.aID = testB.bID的记录.这说明inner join它只显示符合条件的记录.

 

 

1
0
分享到:
评论

相关推荐

    SQL语句left join/right join/inner join 的用法比较

    在SQL查询中,JOIN操作是连接两个或多个表的关键部分,用于从这些表中提取相关数据。本篇文章将深入探讨LEFT ...理解并熟练掌握LEFT JOIN、RIGHT JOIN和INNER JOIN的使用,能帮助我们更有效地从数据库中提取所需信息。

    inner join、 left join 、right join、 outer join之间的区别

    ### inner join、left join、right join、outer join之间的区别 在数据库操作中,连接(Join)是一种非常重要的操作,用于组合两个或多个表中的数据。根据连接的方式不同,可以分为几种类型:`INNER JOIN`、`LEFT ...

    (Left join , Right Join, Inner Join)用法详解

    在数据库查询语言SQL中,连接(Join)是一种非常重要的操作,它允许我们结合两个或多个表的数据来检索信息。根据不同的连接方式,我们可以获取到不同范围的数据组合。本文将详细介绍三种常见的连接类型:Left Join、...

    关于sql的left join,right join,inner join,outerjoin

    总之,LEFT JOIN、RIGHT JOIN、INNER JOIN和OUTER JOIN是SQL语言中的核心部分,理解和熟练运用它们对于任何数据库开发人员都至关重要。通过不断的实践和学习,你可以更好地掌握这些JOIN类型,并在解决复杂数据查询...

    left join right join inner join 区别和联系

    左连接(LEFT JOIN)、右连接(RIGHT JOIN)和内连接(INNER JOIN)是三种最基本的连接类型。在本节中,我们将详细介绍左连接、右连接和内连接的区别和联系。 左连接(LEFT JOIN) 左连接返回左表中的所有行,右表...

    SQL中的left outer join,inner join,right outer join用法详解

    * FULL OUTER JOIN:LEFT OUTER 和 RIGHT OUTER 中所有行的超集。 内连接(Inner Join) 内连接是最常见的一种连接,它也被称为普通连接,而 E.FCodd 最早称之为自然连接。例如: SELECT * FROM t_institution i ...

    数据库关联查询(left,right,inner join)

    ### 数据库关联查询(Left, Right, Inner Join) 在数据库管理与操作中,关联查询是一项极为重要的技术,它能够帮助我们高效地从多个表中提取数据,并根据特定条件进行匹配和整合。本文将通过通俗易懂的方式,详细...

    Mysql之innerjoin,leftjoin,rightjoin详解.pdf

    inner join、left join 和 right join 是 Mysql 中三种最常用的连接查询方式。 inner join inner join 又称等值连接,是指从两个表中选择公共列的记录。只有当两个表中的列值相等时,才会返回结果集。例如: ...

    DataTable实现leftJoin和rightJoi以及innerJoin

    比较实用的方法,已经用到项目里,很好用的一个方法

    数据库Left join , Right Join, Inner Join 的相关内容,非常实用

    总结一下,LEFT JOIN、RIGHT JOIN和INNER JOIN是数据库查询中不可或缺的部分,它们分别用于不同的数据集成需求。LEFT JOIN保证了左表所有数据的完整,RIGHT JOIN保证了右表所有数据的完整,而INNER JOIN则只返回匹配...

    SQL语句inner join,left join ,right join连接的不同之处

    根据连接方式的不同,可以分为多种类型,包括内连接(Inner Join)、左连接(Left Join)以及右连接(Right Join)。本文将详细探讨这三种连接方式的区别,并通过具体的例子来解释它们的应用场景。 ### 内连接...

    SQL left join

    SQLLeft Join是一种常用的数据库查询操作,它可以将两个或多个表格中的数据结合起来,以便更好地分析和处理数据。在本文中,我们将详细介绍SQL Left Join的使用方法、特点和区别,以及与Right Join和Inner Join的...

    Left join优化规则的研究

    在数据库查询优化中,Left Join 的处理是至关重要的,因为它涉及到数据的完整性和性能效率。对于应用开发人员而言,理解 Left Join 的优化规则能够提高查询效率,尤其是在某些数据库系统不支持自动转化 Left Join 为...

    SQL 外链接操作小结 inner join left join right join

    SQL 外链接操作小结 inner join left join right join SQL 外链接操作是关系型数据库管理系统中的一种基本操作,用于从多个表中检索数据。外链接操作可以分为三种:inner join、left join 和 right join。 inner ...

    SQL表连接查询(inner join、full join、left join、right join)1

    在SQL中,主要有四种类型的连接查询:内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)。下面将详细解释这四种连接方式。 1. 内连接(INNER JOIN): 内连接返回两个表中...

    超详细mysql left join,right join,inner join用法分析

    MySQL中的JOIN操作是数据库查询中非常重要的一个概念,主要用于在两个或多个表之间建立关联,以便从这些表中检索所需的数据。在这个超详细的分析中,我们将深入探讨LEFT JOIN、RIGHT JOIN以及INNER JOIN的用法。 1....

    hive sql + left join 数据缺失

    ### Hive SQL Left Join 数据缺失问题解析 #### 一、问题背景 在大数据处理场景中,Hive 是一种广泛使用的工具,用于对存储在 Hadoop 文件系统中的数据进行数据汇总、查询和分析。随着Hive版本的不断更新,部分用户...

    SQL语句优化之JOIN和LEFT JOIN 和 RIGHT JOIN语句的优化

    SQL语句优化对于大型数据库系统至关重要,特别是在涉及多表查询时,JOIN、LEFT JOIN 和 RIGHT JOIN 的高效运用能显著提升查询速度。以下将详细探讨这些JOIN类型以及相关的优化策略。 JOIN原理: JOIN操作实际上是...

    join on 语句及扩展

    3. RIGHT JOIN (或 RIGHT OUTER JOIN): 右JOIN与LEFT JOIN相反,返回右表的所有记录,即使左表中没有匹配的记录。左表中未找到匹配项的记录将用NULL填充。语法: ```sql SELECT columns FROM table1 RIGHT JOIN ...

Global site tag (gtag.js) - Google Analytics