Oracle join 多表串連----至少3張表

來源:互聯網
上載者:User

Oracle join 用法

條件串連(join)

T1{[INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 ON boolean_experssion

{[INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T3 ON boolean_experssion

.....

T1{[INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2 USING ( join colunn list )

T1 NATURAL { [INNER] | { LEFT | RIGHT | FULL } [OUTER] } JOIN T2


INNER 和 OUTER 對所有串連(join) 類型都是可選的.INNER 是預設; LEFT,RIGHT,和 FULL 隱含外串連.

串連條件在ON或USING子句裡聲明, 或者用關鍵字NATURAL隱含地聲明.串連條件判斷來自兩個源表 中的那些行是"匹配"的

ON子句是最常見的串連條件的類型∶它接收一個和WHERE子句裡用的一樣的 布爾值運算式.如果兩個分別來自T1和T2的行在ON運算式上運算的 結果為真,那麼它們就算是匹配的行.

USING是縮寫的概念∶它接收一個用逗號分隔的欄位名字列表, 這些欄位必須是串連表共有的,最終形成一個串連條件,表示 這些欄位對必須相同.最後,JOIN USING 的輸出會為每一對相等 的輸入欄位輸出一個欄位,後面跟著來自各個表的所有其它欄位. 因此,USING (a, b, c) 等效於 ON (t1.a = t2.a AND t1.b = t2.b AND t1.c = t2.c) 只不過是如果使用了ON,那麼在結果裡 a,b,和 c欄位每個都會有兩個, 而用USING的時候每個欄位就只會有一個.

最後,NATURAL 是USING 的縮寫形式∶它形成一個 USING 列表, 該列表由那些在兩個表裡都出現了的欄位名字組成.和USINqG一樣, 這些欄位只在輸出表裡出現一次.

條件JOIN的可能類型是∶


INNER JOIN
對於 T1 的每一行 R1,產生的串連表都有一行對應 T2 中的 每一個滿足和 R1 的串連條件的行.

LEFT OUTER JOIN
首先,執行一次內串連.然後,為 T1 裡那些和 T2 裡任何一行都不滿足串連條件的行返回一個串連行, 同時該串連行裡對應 T2 的列用空值補齊.因此, 產生的串連表裡無條件地包含來自 T1 裡的每一行至少 一個副本.

RIGHT OUTER JOIN
首先,執行一次內串連.然後,為 T2 裡那些和 T1 裡任何一行都不滿足串連條件的行返回一個串連行, 同時該串連行裡對應 T1 的列用空值補齊.因此, 產生的串連表裡無條件地包含來自 T2 裡的每一行.

FULL OUTER JOIN
首先,執行一次內串連.然後,為 T1 裡那些和 T2 裡任何一行都不滿足串連條件的行返回一個串連行, 同時該串連行裡對應 T2 的列用空值補齊. 同樣,為 T2 裡那些和 T1 裡的任何行都不滿足串連條件的 行返回一個串連行,該行裡對應 T1 的列用空值補齊.

如果 T1 和 T2 有一個或者都是可以串連(join)的表, 那麼所有類型的串連都可以串在一起或嵌套在一起. 你可以在JOIN子句周圍使用圓括弧來控制串連順序, 如果沒有圓括弧,那麼JOIN子句是從左向右嵌套的.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.