SQL 中内连接和外连接的区别

mysqlmysqli database

在本文中,我们将了解 SQL 中内连接和外连接的区别。

内连接

  • 使用的子句是‘INNER JOIN’和‘JOIN’。

  • 它返回两个或多个表的组合元组。

  • 当没有共同的属性时,结果为空。

  • 如果元组的数量较多,则‘INNER JOIN’与‘OUTERJOIN’相比,它运行速度更快。

  • 当需要有关特定属性的详细信息时使用它。

  • ‘JOIN’和‘INNER JOIN’的工作方式相同。

语法

SELECT *
FROM table_1 INNER JOIN / JOIN table_2
ON table_1.column_name = table_2.column_name;

外连接

  • 返回指定表的组合元组。

  • 即使‘JOIN’条件失败,也会返回。

  • 可以使用子句LEFT OUTER JOIN、RIGHT OUTER JOIN、FULL OUTER JOIN。

  • 不依赖于公共属性。

  • 如果属性为空,则用NULL代替空白。

  • ‘OUTER JOIN’与‘INNER JOIN’相比,速度较慢。

  • 当需要完整信息时使用。

  • FULL OUTER JOIN 和 FULL JOIN 子句的工作方式相同。

语法

SELECT *
FROM table_1 LEFT OUTER JOIN / RIGHT OUTER JOIN /
FULL OUTER JOIN / FULL JOIN table_2 ON
Table_1.column_name = table_2.column_name;

相关文章