`

SQL的四种连接

    博客分类:
  • db
sql 
阅读更多
转自网络
联接可分为以下几类:   

1、内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符)。包括相等联接和自然联接。    
内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。  
   
2、外联接。外联接可以是左向外联接、右向外联接或完整外部联接。    
在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定:    
1)LEFT  JOIN或LEFT OUTER JOIN    
左向外联接的结果集包括  LEFT OUTER子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。      
2)RIGHT  JOIN 或 RIGHT  OUTER  JOIN    
右向外联接是左向外联接的反向联接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。      
3)FULL  JOIN 或 FULL OUTER JOIN
完整外部联接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。  
   
3、交叉联接  
交叉联接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉联接也称作笛卡尔积。   

FROM 子句中的表或视图可通过内联接或完整外部联接按任意顺序指定;但是,用左或右向外联接指定表或视图时,表或视图的顺序很重要。有关使用左或右向外联接排列表的更多信息,请参见使用外联接。    
   
例子:  
引用

-------------------------------------------------
  a表     id   name     b表     id   job   parent_id  
              1   张3                   1     23     1  
              2   李四                 2     34     2  
              3   王武                 3     34     4      
  a.id同parent_id   存在关系  
--------------------------------------------------  

1) 内连接  
引用

  select   a.*,b.*   from   a   inner   join   b     on   a.id=b.parent_id      
  结果是    
  1   张3                   1     23     1  
  2   李四                  2     34     2  
 
 
  2)左连接  
引用

  select   a.*,b.*   from   a   left   join   b     on   a.id=b.parent_id      
  结果是    
  1   张3                   1     23     1  
  2   李四                  2     34     2  
  3   王武                  null  

3) 右连接  
引用

  select   a.*,b.*   from   a   right   join   b     on   a.id=b.parent_id      
  结果是    
  1   张3                   1     23     1  
  2   李四                  2     34     2  
  null                       3     34     4  
  
4) 完全连接  
引用

  select   a.*,b.*   from   a   full   join   b     on   a.id=b.parent_id  
  结果是    
  1   张3                  1     23     1  
  2   李四                 2     34     2  
  null                   3     34     4  
  3   王武                 null
分享到:
评论

相关推荐

    如何查看sql server数据库连接数

    查看数据库连接数有多种方法,本文将介绍四种不同的方法来查看 SQL Server 数据库连接数。 方法一:通过性能监视器查看 可以通过 Windows 性能监视器来查看 SQL Server 数据库连接数。具体步骤如下: 1. 打开性能...

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

    SQL的四种连接方式是数据库查询中常用的操作,它们分别是内连接(Inner Join)、左外连接(Left Outer Join)、右外连接(Right Outer Join)和全连接(Full Outer Join)。每种连接方式都有其特定的应用场景和返回...

    SqlServer连接工具

    SQL Server连接工具是数据库管理员和开发人员用于与Microsoft SQL Server交互的重要软件。这些工具提供了多种功能,包括数据库的创建、管理、查询、备份、恢复以及性能优化等。在本篇文章中,我们将深入探讨SQL ...

    sql server客户端连接工具

    SQL Server客户端连接工具是数据库管理员和开发人员用来与Microsoft SQL Server进行交互的重要工具。它提供了图形用户界面(GUI)和命令行选项,使得用户能够轻松地执行查询、管理数据库对象以及进行其他数据库维护...

    SqlDbx连接oracle

    首先,连接Oracle数据库通常需要Oracle客户端软件,但这里提到的“Sqldbx连接oracle,不用安装client”,意味着SqlDbx可能通过一种无需完整Oracle客户端的方式来实现连接。这种连接方式通常依赖于Oracle的Instant ...

    如何连接SQL数据库

    四、故障申告系统的数据库连接 在"故障申告系统"项目中,数据库连接至关重要。系统需要收集、存储和处理用户的故障报告,这涉及到创建数据库表,定义数据结构,以及编写处理数据的SQL语句。首先,你需要确定使用SQL...

    SQL SERVER连接oracle数据库几种方法

    SQL SERVER 连接 Oracle 数据库几种方法 在实际开发中,我们经常需要在 SQL Server 中连接 Oracle 数据库,以便实现数据交换和集成。那么,如何在 SQL Server 中连接 Oracle 数据库呢?下面我们将介绍几种常见的...

    sqlserver2008四种连接方法

    SQL Server 2008 四种连接方法 SQL Server 2008 提供了四种连接方法,分别是通过 JDBC-ODBC 桥和 JDBC 驱动连接数据库。其中,JDBC-ODBC 桥方式又可以分为 Windows 身份验证和 SQL Server 身份验证两种方式,而 ...

    SQL连接器 SQL连接器

    SQL连接器是数据库管理系统与应用程序之间的重要桥梁,它允许程序通过特定的接口与各种数据库进行交互,从而实现数据的查询、插入、更新和删除等操作。在本文中,我们将深入探讨SQL连接器的工作原理、常见类型以及...

    ASP连接SQL2005数据库连接代码.

    ### 四、连接状态判断 无论采用哪种连接方式,在连接成功后,都需要检查连接状态,确保数据库连接可用。以下是连接状态判断的代码片段: ```vb If Conn.State = 2 Then Response.Write("正在连接") ElseIf Conn....

    SQLTools sql连接工具

    SQLTools sql连接工具SQLTools sql连接工具SQLTools sql连接工具

    SQL 左外连接,右外连接,全连接,内连接 四种连接的差异.doc

    SQL 连接的四种类型:左外连接、右外连接、全连接、内连接 在 SQL 中,连接(JOIN)是一种非常重要的概念,它允许我们从多个表中检索数据。连接可以分为四种类型:左外连接、右外连接、全连接和内连接。每种连接都...

    oracle sqldeveloper连接mysql、SQLServer第三方dll

    解决oracle sqldeveloper无法连接mysql、SQLServer问题,sqlDeveloper是ORACLE数据库开发工具,自带的是无法连接MS SQL Server以及mysql的,想连接的话需要第三方工具。 使用方法: 解压出来后将2个jar放入jlib...

    SqlDbx 数据库连接工具 可连接多个数据库

    SqlDbx是一款强大的数据库连接工具,专为数据库管理员和开发人员设计,支持连接多种类型的数据库。这款工具以其高效、易用和多功能性而备受推崇。下面将详细介绍SqlDbx的功能特性以及如何使用它来连接和管理不同的...

    PB125连接SQL数据库两种方法

    ### PB12.5连接SQL Server数据库两种方法详解 #### 一、背景介绍 PowerBuilder(简称PB)是一款由Sybase公司开发的快速应用开发工具,广泛应用于企业级应用程序的开发。随着技术的发展,PB也经历了多个版本的迭代,...

    sqlserver连接字符串大全

    对于SQL Server 2000版本,连接字符串主要包括以下两种格式: 1. **使用SQLOLEDB提供程序:** - `Provider=SQLOLEDB;DataSource=server;InitialCatalog=database;UserId=user;Password=password;` - `Provider=...

    LABVIEW与SQL SERVER的连接方法详细说明

    下面就介绍LABVIEW与SQLSERVER的连接方法。连接思路:先在SQLSERVER建立自己的数据库,如MyDB。然后在操作系统建立一数据源(ODBC),此数据源的驱动选择SQLSERVER,数据源与SQLSERVER中的MyDB关联。最后在LABVIEW中...

    SQL SERVER数据库连接客户端

    在SQL Server中,可以通过ODBC或OLE DB接口实现连接,SQL Native Client提供了这两种方式的实现。 5. **SQL Server**: SQL Server是微软公司开发的一款关系型数据库管理系统,广泛应用于企业级数据存储和管理。它...

    SQL Server 2005 启用远程连接

    #### 四、在Windows防火墙中为SQL Server Browser 创建例外 除了SQL Server 2005服务之外,还需要为SQL Server Browser服务创建防火墙例外。 **步骤1:** 打开Windows防火墙设置,选择“例外”选项卡,点击“添加...

    sql_server连接Oracle方法(最全)

    "SQL Server 连接 Oracle 方法" SQL Server 连接 Oracle 方法是数据库管理系统中的一个重要话题。本文将详细介绍如何在 SQL Server 中连接 Oracle 数据库,并解决在连接过程中可能出现的问题。 安装 Oracle 客户端...

Global site tag (gtag.js) - Google Analytics