close

1.交叉合併(Cross Join)

稱為Cross Join or Cross Product。

請參考P4-3圖

cross join 後可能產生合理或不合理之情形,而內部合併(Inner Join)就是用來消除cross product所產生之不合理結果。

簡單來說cross product 比較像一次把資料全部撈出來,程式開發人員然後再利用其他種join方式來取出自己要的資料。

 

2.內部合併(Inner Join)

又稱為condition join,也就是上述所說Cross join後在加上兩張或以上的資料表之間的條件限制or稱為Mapping關係,而合成之合併。

可以參考P4-6圖

 

3.外部合併(Outer Join)

外部合併又分為下列3種:

  A. 左外部合併(left outer join)

  以左邊資料表為主,合併後記錄包括:

  1.符合兩邊資料表對應關係的紀錄。

  2.左邊資料表包但是右邊資料表不包含之資料。

  簡單說就是,以左邊資料表為主,所以左邊資料表紀錄必須全部顯示出來,但右邊資料表則未必。

  合併後之資料表,左邊資料表對應不到右邊資料紀錄,則會在右邊資料表紀錄填上null值(空值)。

  可參考P4-11 圖4-12

 

  B.右外部合併(right outer join)

  意義同上。

 

  C.完全外部合併(full outer join)

  此join包括:

  1.左邊資料表對應到右邊資料紀錄。

  2.,左邊資料表對應不到右邊資料紀錄,則會在右邊資料表紀錄填上null值(空值)。 

  3.右邊資料表對應不到左邊資料紀錄,則會在左邊資料表紀錄填上null值(空值)。 

  可以參考P4-18 圖4-21

 

 4.自我合併(Self-Join)

 實際上只有一個資料表,但合併時將此一資料表當成兩個不同資料表。

 透過單一資料表自我查詢,達到自我合併之基礎。也就是說將同一張資料表,利用不同別名來進行合併。 

 可以參考p4-27 圖4-32

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 melomelo1988 的頭像
    melomelo1988

    melo 唐

    melomelo1988 發表在 痞客邦 留言(0) 人氣()