【发布时间】:2026-02-06 13:10:01
【问题描述】:
在我看来,外部连接有点令人困惑。
有没有人可以让我清楚地了解外部连接(右、左和完整)?
【问题讨论】:
标签: sql oracle tsql oracle9i outer-join
在我看来,外部连接有点令人困惑。
有没有人可以让我清楚地了解外部连接(右、左和完整)?
【问题讨论】:
标签: sql oracle tsql oracle9i outer-join
【讨论】:
Wikipedia article about Joins 应该可以帮助您。
Oracle 外连接的特别之处在于使用 (+) 的旧符号,但现在已经过时了。
【讨论】:
我一直这么认为的方式是:
LEFT JOIN - keeps all rows selected on the left
RIGHT JOIN - keeps all rows selected on the right
FULL JOIN - keeps all rows selected on both sides
易于记在脑海中,无需访问*或绘制图表。
附: Oracle 死亡 + 连接语法!
【讨论】:
我从不喜欢@Pranay Rana 的回答中使用的那些经常看到的图片。它们显示集合操作但不显示连接。比如上面中间的图片是A union B,左边中间的图片是A except B(或者我想Oracle是A minus B)等等。
还要考虑到关系模型中不存在 null,因此无论如何您都无法使用维恩图来绘制它! ;)
我认为不使用表格(例如this one)就无法绘制外连接图。
【讨论】: