钟二网络头像

钟二网络

探索SQL查询技巧、Linux系统运维以及Web开发前沿技术,提供一站式的学习体验

  • 文章92531
  • 阅读1333331
首页 SQL 正文内容

sql两表关联有哪几种方法

钟逸 SQL 2025-09-19 12:35:40 2

在 SQL 中,关联用于组合来自不同表的相关数据。有几种不同的关联 ,每种 都有其自身的用途和优势。

内连接 (INNER JOIN)

内连接是最常见的关联类型,它仅返回出现在两张表中的行。换句话说,它在两个表上找到匹配的行并返回其组合结果。

sql

SELECT *

FROM table1

INNER JOIN table2

ON table1.id = table2.id;

左外连接 (LEFT OUTER JOIN)

左外连接返回左表的所有行,即使它们在右表中没有匹配的行。右表中匹配的行也会被返回。

sql

SELECT *

FROM table1

LEFT OUTER JOIN table2

ON table1.id = table2.id;

右外连接 (RIGHT OUTER JOIN)

右外连接与左外连接类似,但它返回右表的所有行,即使它们在左表中没有匹配的行。左表中匹配的行也会被返回。

sql

SELECT *

FROM table1

RIGHT OUTER JOIN table2

ON table1.id = table2.id;

全外连接 (FULL OUTER JOIN)

全外连接返回来自两张表的全部行,即使它们在另一张表中没有匹配的行。

sql

SELECT *

FROM table1

FULL OUTER JOIN table2

ON table1.id = table2.id;

自关联

自关联是一种特殊类型的关联,其中表与自身的连接。它用于查找表中的重复项或分组记录。

sql

SELECT *

FROM table1

INNER JOIN table1 AS t2

ON table1.id = t2.id;

关联术语

理解关联术语很重要:

* **外键 (FK)**:将子表中的字段与父表中的字段关联的字段。

* **主键 (PK)**:唯一标识表中每一行的字段。

* **主表**:在关联中提供外键的表。

* **子表**:在关联中引用主表外键的表。

* **关联条件**:用于指定关联表之间的连接条件的语句。

文章目录
    搜索