SQL的主要特性之一是能够在数据检索查询中动态的联接各个表。连接表是使用SQL select最重要的操作之一,对连接和连接语法的学习理解是学习SQL重要的一部分。

在SQL server中,有的数据分布在各个逻辑表中,如果想要获得完整的数据就需要连接来对这些表进行查询.

1.内连接

内连接是SQLserver中最常见的连接之一,通过串联语句来连接查询各个表中的相关数据。

sql server怎么连接mysql sql server怎么连接两个表_sql server怎么连接mysql

sql server怎么连接mysql sql server怎么连接两个表_数据_02

通过from指定主表student,join连接附表sc查询出两个表中相关连的数据,通过on where 查询出所需数据。

2.左连接

使用Left join左连接查询的数据将返回左表中所有的数据和右表中相关联的数据,如果左表的数据在右表没有相匹配用Null代替

sql server怎么连接mysql sql server怎么连接两个表_sqlserver_03

sql server怎么连接mysql sql server怎么连接两个表_sqlserver_04

3.右连接

使用right join子句组合来自两个或多个表的数据。与左连接相反 right join是从右表中选择数据并与左表中的数据匹配。 right join 返回一个结果集,该结果集中包含右表中的所有行,无论是否具有左表中的匹配行。如果右表的数据在左表没有相匹配用Null代替

sql server怎么连接mysql sql server怎么连接两个表_自连接_05

sql server怎么连接mysql sql server怎么连接两个表_sql server怎么连接mysql_06

4.交叉连接

Cross join可以连接两个或多个不相关的表。Cross join 可以将第一个表中的每一行与第二个表中的每一行连接起来,但与左连接右连接不同,交叉连接不会在连接的表中建立关系。

sql server怎么连接mysql sql server怎么连接两个表_sqlserver_07

sql server怎么连接mysql sql server怎么连接两个表_sql server怎么连接mysql_08

5.自连接

自连接用于将表连接到自身。 它常用于查询分层数据或对同一个表中的行进行比较。 自联接使用内连接或左连接子句。 由于使用自连接的查询需要引用同一个表,因此表别名用于为查询中的表分配不同的名称。

sql server怎么连接mysql sql server怎么连接两个表_SQL_09

sql server怎么连接mysql sql server怎么连接两个表_sqlserver_10

6.全外连接

FULL OUTER JOIN当左表或右表中存在匹配项时,将返回所有行。