1. 程式人生 > >ORACLE——多表查詢(外連線,內連線)

ORACLE——多表查詢(外連線,內連線)

對於資料表的連線操作在資料庫之中一共定義了兩種:

內連線:也稱為等值連線(或稱為連線,還可以被稱為普通連線或者自然連線),

是最早的一種連線方式,內連線是從結果表中刪除與其他被連線表中沒有匹配行的所有元組,

所以當匹配條件不滿足內連線可能會丟失資訊。在之前所使用的連線方式都屬於內連線,而在

where 子句之中設定的消除笛卡爾積的條件就採用了等值判斷的方式進行的。

外連線:內連線中只能夠顯示等值滿足的條件,如果不滿足的條件則無法顯示,

如果現在希望特定表中的資料可以全部顯示,就利用外連線,外連線分為三種:左

外連線(左連線)、右外連線(右連線)、全外連線(全連線)。

左關係屬性=右關係屬性(+):現在“(+)”放在了右邊,所以此時表示的是左連線;

左關係屬性(+)=右關係屬性:現在“(+)”放在了等號的左邊,所以此時表示的是右連線。

範例:

左連線

SELECT

FROM emp e,dept d

WHERE e.deptno=d.deptno(+);

右連線

SELECT

FROM emp e,dept d

WHERE e.deptno(+)=d.deptno;