Sql 让我清楚了解Oracle 9i中的外部联接

Sql 让我清楚了解Oracle 9i中的外部联接,sql,oracle,tsql,oracle9i,outer-join,Sql,Oracle,Tsql,Oracle9i,Outer Join,外部连接在我看来有点混乱 有没有人能让我清楚地了解外部联接(右、左和全联接?原始问题/答案: 在上阅读这篇原创文章将对您有很大帮助: 这本书应该对你有所帮助 Oracle外部联接的特殊之处在于使用(+)的旧表示法,但它现在已经过时了。我一直认为它是: LEFT JOIN - keeps all rows selected on the left RIGHT JOIN - keeps all rows selected on the right FULL JOIN - keeps all

外部连接在我看来有点混乱

有没有人能让我清楚地了解外部联接(右、左和全联接?

原始问题/答案:

在上阅读这篇原创文章将对您有很大帮助:

这本书应该对你有所帮助


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  
不用去维基百科或画图表,就可以轻松地记在脑子里


顺便说一句,甲骨文死亡+连接语法

我从来都不喜欢@Pranay Rana的回答中经常出现的那些图片。它们显示集合操作,但不显示联接。例如,中上部的图片是
A联合B
,左中部是
A,除了B
(或者我假设
A减去B
,用于Oracle),依此类推

也考虑在关系模型中不存在NULL,所以无论如何不能用VeN图来画它!!)


我认为,如果不使用表,就无法绘制外部联接的图片,例如。

Thnaks很多Pranay。该图非常有用:-)