gpt4 book ai didi

sql - 自然连接和内连接的区别

转载 作者:行者123 更新时间:2023-12-03 04:13:01 24 4
gpt4 key购买 nike

自然连接和内部连接有什么区别?

最佳答案

INNER JOIN 和 NATURAL JOIN 之间的一个显着区别是返回的列数。

考虑:

TableA                           TableB
+------------+----------+ +--------------------+
|Column1 | Column2 | |Column1 | Column3 |
+-----------------------+ +--------------------+
| 1 | 2 | | 1 | 3 |
+------------+----------+ +---------+----------+

TableA 和 TableB 在 Column1 上的 INNER JOIN 将返回

SELECT * FROM TableA AS a INNER JOIN TableB AS b USING (Column1);
SELECT * FROM TableA AS a INNER JOIN TableB AS b ON a.Column1 = b.Column1;
+------------+-----------+---------------------+    
| a.Column1 | a.Column2 | b.Column1| b.Column3|
+------------------------+---------------------+
| 1 | 2 | 1 | 3 |
+------------+-----------+----------+----------+

TableA 和 TableB 在 Column1 上的 NATURAL JOIN 将返回:

SELECT * FROM TableA NATURAL JOIN TableB
+------------+----------+----------+
|Column1 | Column2 | Column3 |
+-----------------------+----------+
| 1 | 2 | 3 |
+------------+----------+----------+

避免重复列。

(根据标准语法,您无法在自然连接中指定连接列;连接严格基于名称。另请参阅 Wikipedia 。)

(内部联接输出中有一个作弊行为;a.b. 部分不会出现在列名称中;您只需column1column2column1column3 作为标题。)

关于sql - 自然连接和内连接的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8696383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com