T-SQL 连接17 Mar 2025 | 阅读 2 分钟 T-SQL 连接用于组合来自两个或多个表中的记录。**它**用于将**两个或多个**表中的记录连接到数据库中。连接用于通过使用彼此相等的值连接来自多个表的字段。 请看下面的两个表,(a)CUSTOMERS 表如下 - ID | 姓名 | 年龄 | 地址 | 工资 |
---|
1 | Hamilton | 23 | 澳大利亚 | 34000 | 2 | Warner | 34 | 英格兰 | 22000 | 3 | Martin | 28 | 中国 | 25000 | 4 | Twinkle | 30 | 土耳其 | 50000 | 5 | Tinu | 32 | Nepal | 45000 | 6 | Michal | 31 | 不丹 | 20000 | 7 | 哈珀 | 20 | Bangladesh | 15000 |
(b)另一个表 ORDERS 如下 - OID | DATE | CUSTOMER_ID | AMOUNT |
---|
100 | 2020-10-08 00.00.000 | 3 | 15000 | 101 | 2020-11-20 00.00.000 | 2 | 15600 | 102 | 2020-10-08 00.00.000 | 3 | 30000 | 103 | 2019-05-20 00.00.000 | 4 | 20600 |
让我们在 SELECT 语句中连接两个表,如下所示 - 该命令产生给定的输出。  连接是在 WHERE 子句中执行的。许多运算符将用于连接表,例如 =, <, >, <>, <=, >=, ! =, LIKE, BETWEEN 和 NOT。 MS SQL 中的连接类型MS SQL Server 中使用多种类型的连接 - - INNER JOIN (内连接)
- LEFT JOIN
- RIGHT JOIN
- FULL JOIN (完全连接)
- 自连接 (SELF JOIN)
- CARTESIAN JOIN (笛卡尔连接)

序列号 | 描述 |
---|
INNER JOIN (内连接) | 当表中存在匹配项时,它返回行。 | LEFT JOIN | 它从第一个(最左边)表选择与正确表记录匹配的记录。 | RIGHT JOIN | 如果未在左表中找到任何匹配项,它将从右表选择所有行。 | FULL JOIN (完全连接) | 如果其中一个表中存在任何匹配项,则这些行将以完全连接方式连接。 | 自连接 (SELF JOIN) | SELF JOIN 用于连接一个表,如果它有两个表,则至少在 MS SQL SERVER 中重命名一个表。 | CARTESIAN JOIN (笛卡尔连接) | 笛卡尔积在 T-SQL 中设置了许多连接表的记录。 |
示例这里有两个名为 Color 和 Size 的表,我们借助完全连接将它们组合在一起。 
|