gpt4 book ai didi

mysql - SQL 连接 : Are selects between more than 2 tables still joins?

转载 作者:行者123 更新时间:2023-11-29 04:41:52 24 4
gpt4 key购买 nike

当我读到有关 SQL 中的内连接或外连接时,所有示例和描述都是关于连接 2 个表的。如果查询中有超过 2 个表怎么办?这仍然被视为连接吗?

我认为inner join即使在多个表之间还是有意义的;但我不确定外部联接在超过 2 个表之间是否有意义。

有人可以澄清这个问题吗?

最佳答案

内部连接和外部连接在 2 个以上的表中使用是完全合理的。
内部联接强制结果仅显示包含您联接的任何行的数据,而外部联接无论如何显示所有数据。

假设您想将 4 个表连接在一起...

select * from testtable
inner join testable2 on col1 = othercolumn
inner join testable3 on col2 = othercolumn
leftjoin testable4 on col3 = othercolumn

在这种情况下,它将仅返回存在于内部联接中的结果,但结果不必存在于外部/左联接中。您正在强制测试表 2 和 3 对您加入的内容有一个值。它不能为空。

左连接不关心值是否为空,无论如何都会显示结果。我希望这对某些人有所帮助...基本上...如果您在内部加入一个值,并且它可能为空,那么整个查询将显示为空白。这是您将使用外部联接的场景。您没有强制该值存在。

关于mysql - SQL 连接 : Are selects between more than 2 tables still joins?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26763919/

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