資料庫合併類型

合併是資料庫的基本功能,此功能可以根據兩個不同表格和/或資料庫的共用欄位 (也就是「合併條件」) 將其內容合併至單一視圖。如需更多資訊,請參閱「關於表格和資料庫合併」。

在您的文件中使用來自多個表格和/或多個資料庫的資料時,必須使用其中一種支援的資料庫合併類型來結合這些表格和/或資料庫。

在 BarTender 所支援的不同合併類型的範例中,會參考下面的範例表格。表格 A 列出員工及其部門 ID,表格 B 則列出部門名稱及其部門 ID。「部門 ID」是這兩個表格共用且作為合併條件的欄位。

表格 A

名字

部門 ID

Joe

31

Jane

33

Mark

33

Mary

34

Dan

34

Donna

空值

表格 B

部門 ID

部門名稱

31

銷售

33

工程

34

辦公室

35

行銷

BarTender 支援以下合併類型用於多資料庫合併。

在「資料庫設定精靈」中,可用的合併類型僅限於資料庫提供商所支援的合併。例如,如果您為 OLEDB 資料庫建立資料庫合併,就只能使用「內部合併」這個合併類型。若要解決此限制,您可以為所需的每個表格建立單獨的資料庫連線,然後使用「資料庫設定」對話方塊的「多資料庫合併」頁面來進行合併。

關閉內部合併

「內部合併」是常見的合併命令,通常被視為預設的合併類型。在內部合併中,透過返回和合併針對您指定的合併欄位具有相符值的指定表格的所有列,來建立新的結果。如果表格 A 的某列和表格 B 的某列不相符,結果就會省略該列。

對於範例表格,使用「部門 ID」作為合併條件的內部合併會產生以下結果集。

名字

部門 ID

部門名稱

Joe

31

銷售

Jane

33

工程

Mark

33

工程

Mary

34

辦公室

Dan

34

辦公室

因為表格 A 列出的 Donna 部門 ID 為空值,所以她不會顯示於所產生的內部合併表。同樣,如果她獲派表格 B 未列出的部門 ID,她也不會顯示,因為找不到任何與她相關聯的相應列。

空值的處理方式有別於其他值,並且無法與 0 (零) 值甚至是與其他空值進行比較。因此,內部合併無法返回合併條件所用欄位內空值的任何列,因為沒有等價的欄位值。

關閉左向外部合併

「左向外部合併」與內部合併不同,因為即使右側表格 (表格 B) 無任何相符列,它也會返回左側表格 (表格 A) 的所有列。若左側表格的列在右側表格中沒有相符列,合併結果就會列為空值,代表右側表格並無相符列。在本範例中,即使員工並未獲派至部門 (正如下表 "Donna" 的情況所示),結果集也會列出所有員工。

名字

部門 ID

部門名稱

Joe

31

銷售

Jane

33

工程

Mark

33

工程

Mary

34

辦公室

Dan

34

辦公室

Donna

空值

空值

關閉右向外部合併

「右向外部合併」與左向外部合併的運作方式完全相同,只是方向相反;因此即使左側表格 (表 A) 無任何相符列,右側表格 (表 B) 的所有條目也會在結果集內返回。在本範例中,即使員工並未與某部門相關聯 (正如下表「行銷」部門的情況所示),結果集也會列出所有部門。

名字

部門 ID

部門名稱

Joe

31

銷售

Jane

33

工程

Mark

33

工程

Mary

34

辦公室

Dan

34

辦公室

空值

35

行銷

關閉完全外部合併

「完全外部合併」會返回結果,其中會同時列出右側表格和左側表格中的所有列,即使某個列在另一個表中沒有相符值也是如此。若某列在另一個表格沒有相符列,缺少的值會作為空值返回。在本範例中,此結果既包括「行銷」部門 (儘管此部門沒有員工),也包括員工 "Donna" (儘管她沒有部門)。

名字

部門 ID

部門名稱

Joe

31

銷售

Jane

33

工程

Mark

33

工程

Mary

34

辦公室

Dan

34

辦公室

Donna

空值

空值

空值

35

行銷

相關主題