![]() |
1
55
外部联接,可以有三个选项:
This is a good visual representation of JOINs
使用左联接/为空
使用不存在
不使用
|
![]() |
2
7
内部联接与外部联接没有直径。它们有不同的用途。但是,从一个表中查找另一个表中不存在的行的常见模式是使用外部联接:
这将返回表1中的所有行和表2中的任何匹配行,这样,如果给定的表1行没有表2匹配,则返回表2列的空值。然后,通过要求不可为空的列(Table2.PrimaryKeyCol)为空,我将从表1中获取表2中不存在的所有行。使用您的示例表名,我们可以得到如下内容:
|
![]() |
3
4
如果将内部联接视为满足特定条件的两个表的行,则相反的情况是 任何一个 没有的桌子。 例如,下面将选择地址表中具有地址的所有人员:
我想,与此相反的是选择所有没有地址的人和所有没有人的地址。然而,这似乎不是您所要求的,您似乎只对其中的一个部分感兴趣:地址表中没有地址的所有人。 为此,最好是左连接:
请注意,通常有些人喜欢用不同的方式来写它,因为他们认为它更具可读性(但是在我使用大型表的经验中,它的性能比上述方式更差):
|
![]() |
4
0
我认为最好的解决办法是
上面的查询将返回设置了addrid但在地址表中没有相应记录的每个人。
OBS:
在中使用常量1
|
![]() |
blogger13 · 视频租赁店数据库的规范化 4 月前 |
![]() |
ì¤ì¤í · 为什么LEFT INNER JOIN被弃用? 5 月前 |
![]() |
relatively_random · 确保两个表之间一致的共同参考 6 月前 |
|
Grenish Rai · Firestore错误“用户文档不存在” 9 月前 |
![]() |
Saijo-Shi · PLpgsql中的更新触发器 9 月前 |
![]() |
Dante · Django::配置不当:池不支持持久连接 9 月前 |
![]() |
YouLocalRUser · 删除重复行,保留第一行 10 月前 |