连接操作2025年3月17日 | 阅读 3 分钟 连接操作将来自不同关系的、且满足给定连接条件的相关元组组合起来。它用符号 ⋈ 表示。 示例EMPLOYEE EMP_CODE | EMP_NAME |
---|
101 | Stephan | 102 | 杰克 | 103 | Harry |
工资 EMP_CODE | 工资 |
---|
101 | 50000 | 102 | 30000 | 103 | 25000 |
结果 EMP_CODE | EMP_NAME | 工资 |
---|
101 | Stephan | 50000 | 102 | 杰克 | 30000 | 103 | Harry | 25000 |
连接操作的类型

1. 自然连接- 自然连接是 R 和 S 中所有组合的元组集合,这些元组在它们的共同属性名上是相等的。
- 它用符号 ⋈ 表示。
示例:让我们使用上面的 EMPLOYEE 表和 SALARY 表 输入 输出 EMP_NAME | 工资 |
---|
Stephan | 50000 | 杰克 | 30000 | Harry | 25000 |
2. 外连接外连接操作是连接操作的扩展。它用于处理缺失信息。 示例 EMPLOYEE EMP_NAME | STREET | CITY |
---|
Ram | Civil line | 孟买 | Shyam | Park street | 加尔各答 | Ravi | M.G. Street | 德里 | Hari | Nehru nagar | 海得拉巴 |
FACT_WORKERS EMP_NAME | BRANCH | 工资 |
---|
Ram | Infosys | 10000 | Shyam | Wipro | 20000 | Kuber | HCL | 30000 | Hari | TCS | 50000 |
输入 输出 EMP_NAME | STREET | CITY | BRANCH | 工资 |
---|
Ram | Civil line | 孟买 | Infosys | 10000 | Shyam | Park street | 加尔各答 | Wipro | 20000 | Hari | Nehru nagar | 海得拉巴 | TCS | 50000 |
外连接主要有三种类型 - 左外连接
- 右外连接
- 全外连接
a. 左外连接- 左外连接包含 R 和 S 中所有组合的元组集合,这些元组在它们的共同属性名上是相等的。
- 在左外连接中,R 中的元组在 S 中没有匹配的元组。
- 它用符号 ⟕ 表示。
示例:使用上面的 EMPLOYEE 表和 FACT_WORKERS 表 输入
EMP_NAME | STREET | CITY | BRANCH | 工资 |
---|
Ram | Civil line | 孟买 | Infosys | 10000 | Shyam | Park street | 加尔各答 | Wipro | 20000 | Hari | Nehru street | 海得拉巴 | TCS | 50000 | Ravi | M.G. Street | 德里 | NULL | NULL |
b. 右外连接- 右外连接包含 R 和 S 中所有组合的元组集合,这些元组在它们的共同属性名上是相等的。
- 在右外连接中,S 中的元组在 R 中没有匹配的元组。
- 它用符号 ⟖ 表示。
示例:使用上面的 EMPLOYEE 表和 FACT_WORKERS 关系 输入 输出 EMP_NAME | BRANCH | 工资 | STREET | CITY |
---|
Ram | Infosys | 10000 | Civil line | 孟买 | Shyam | Wipro | 20000 | Park street | 加尔各答 | Hari | TCS | 50000 | Nehru street | 海得拉巴 | Kuber | HCL | 30000 | NULL | NULL |
c. 全外连接- 全外连接类似于左连接或右连接,但它包含来自两个表的所有行。
- 在全外连接中,R 中没有匹配 S 中元组的元组,以及 S 中没有匹配 R 中元组的元组,都在它们的共同属性名上。
- 它用符号 ⟗ 表示。
示例:使用上面的 EMPLOYEE 表和 FACT_WORKERS 表 输入 输出 EMP_NAME | STREET | CITY | BRANCH | 工资 |
---|
Ram | Civil line | 孟买 | Infosys | 10000 | Shyam | Park street | 加尔各答 | Wipro | 20000 | Hari | Nehru street | 海得拉巴 | TCS | 50000 | Ravi | M.G. Street | 德里 | NULL | NULL | Kuber | NULL | NULL | HCL | 30000 |
3. 等值连接它也被称为内连接。它是最常见的连接。它基于根据相等条件匹配的数据。等值连接使用比较运算符 (=)。 示例 CUSTOMER RELATION CLASS_ID | 姓名 |
---|
1 | John | 2 | Harry | 3 | Jackson |
PRODUCT PRODUCT_ID | CITY |
---|
1 | 德里 | 2 | 孟买 | 3 | Noida |
输入 输出 CLASS_ID | 姓名 | PRODUCT_ID | CITY |
---|
1 | John | 1 | 德里 | 2 | Harry | 2 | 孟买 | 3 | Harry | 3 | Noida |
|