---
schema_version: "1"
id: e82942419d5ef58d0d53db9f81db63f24916c6389780c593449ed57a08ba6203
title: 與您的資料建立關聯
collection: tableau
version: next
locale: zh-tw
portal_url: https://docs.salesforce.com/tableau/next/zh-tw/public/desktop/relate_tables.md
canonical_url: https://help.tableau.com/v0.0/public/desktop/zh-tw/relate_tables.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 4bb37da00686c13babe6b1d4a308b9626286de881aaa71e51b1b729a77866464
description: Relate tables to combine data from multiple tables for analysis.
---
[跳至主要內容](#main-content)

# 與您的資料建立關聯

關係是合併多個表中的資料以進行分析的動態彈性方式。關係會以常用欄位為基礎，描述兩個彼此相關的表，但不會將表合併在一起。在表之間建立關係時，表會保持獨立，以維持其各自的詳細資料層級和網域。

您可以將關係視為兩個表之間的合約。當您使用這些表中的欄位建立視覺效果時，Tableau 會使用這項合約從表中擷取資料，以便建立具有適當聯結的查詢。

**瞭解更多**：能夠使用關係合併資料是 Tableau 新資料建模功能的一個重要特性。有關詳細資訊，請參閱[資料來源和分析的更新功能](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_datamodel_whatschanged.htm)。您可以在以下 Tableau 部落格文章中瞭解關係如何工作的詳情：

- [關係，第 1 部分：在 Tableau 中導入新的資料建模](https://www.tableau.com/about/blog/2020/5/relationships-part-1-meet-new-tableau-data-model)
- [關係，第 2 部分：提示和技巧](https://www.tableau.com/about/blog/2020/5/relationships-part-2-tips-and-tricks)
- [關係，第 3 部分：在多個關聯資料表中提問](https://www.tableau.com/about/blog/2020/6/relationships-part-3-asking-questions-across-multiple-related-tables)

**觀看影片**：有關在 Tableau 中使用關係的介紹，請觀看這段 5 分鐘的影片。

**附註**：此影片中顯示的編輯關係介面與當前版本略有不同，但功能相同。

[Action Analytics](https://action-analytics.com/library/) 還提供有關在 Tableau 中使用關係的實用影片播客。有關介紹，請參閱 [Tableau 為何發明關係？](https://action-analytics.com/ep-1-why-did-tableau-invent-relationships/)選取動作分析網站[內容庫](https://action-analytics.com/library/)中的「影片播客」以查看其他播客。

## 什麼是關係？

關係是指在資料來源中的邏輯資料表之間建立的彈性連接線。有些人會將關係暱稱為「關聯線」，但是我們在說明文件中通常會將之稱為「關係」。

在合併資料時，建議您以關係作為優先採用的方法，因為它可備妥資料，並且讓分析更加簡單而直覺化。[在絕對必要時，才使用聯結](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_datamodel_faq.htm#can-i-use-joins-between-logical-tables)。

與使用聯結相比，在多表格資料中使用關係具有多種優勢：

- 您不需要在資料表之間設定[聯結類型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_relationships_learnmorepage.htm#where-did-joins-go)。您只需要選取欄位以定義關係。
- 建立關聯的各表會保持獨立與差異，不會合併到單一表格中。
- 關係使用聯結，但會自動執行。Tableau 會根據視覺效果中所使用的欄位，自動選取聯結類型。在分析過程中，Tableau 會聰明地調整聯結類型，並保留資料中的本機詳細層級。
- Tableau 會根據工作表中所使用之欄位的目前內容，在分析過程中使用關係來產生正確的彙總與適當的聯結。
- 單一資料來源支援不同詳細資料層級的多個表格。您可以建立包含更多表的資料模型，藉此減少建立視覺效果所需的資料來源數量。
- 不相符的度量值不會捨棄（不會意外遺失資料）。
- 使用關係避免有時會因為聯集而導致的資料重複與篩選問題。
- Tableau 只會針對與目前檢視相關的資料產生查詢。
- 您可以關聯已發佈資料來源。

有關詳情，請參閱：

- [使用關係進行多資料表資料分析](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_normalized.htm)
- [關係與聯結的不同之處](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_relationships_learnmorepage.htm)
- [使用關係的多資料表資料來源中的分析方式](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_analysis_overview.htm)
- [善加運用關係](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_dont_be_scared.htm)

## 關係需求

- 建立表關聯時，定義關係的欄位必須具有相同的資料類型。
- 您無法根據地理欄位來定義關係。
- 資料模型中不支援循環關係。

限制使用相關表益處的因素：

- 表中的混雜資料（例如，表在建立之初未考量模型結構的妥善性，且混雜了多個表中的度量和維度）可能致使多例如，分析更為複雜。
- 使用資料來源篩選條件時，Tableau 在資料中執行聯結挑選的能力將會受限。「聯結挑選」一詞是指 Tableau 藉由移除不必要的聯結來簡化查詢的機制。
- 表中包含許多在各關係間不相符的值。
- 在 Tableau 版本 2024.2 及更高版本中，可以對共用維度進行建模並使用多事實關係的多個基底資料表。有關詳情，請參閱[關於多事實關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_multiple_base_tables.htm)、[何時使用多事實關係模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_when_to_use.htm)與[建置多事實關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_build.htm)。

### 無法建立關聯的資料

完全支援大多數關係連線類型。Cubes、SAP HANA（具有 OLAP 屬性）、JSON 和 Google Analytics (分析) 在 Tableau 2020.2 中受限於只能使用單一邏輯資料表。預存程序只能在單一邏輯資料表中使用。

不支援

- 多維資料庫不支援新的邏輯層。連線到 Cube 可提供與 2020.2 之前相同的體驗。
- 預存程序：不支援同盟、關係或聯結。它們呈現在單一邏輯資料表中，且不允許開啟「聯結/聯集」畫布（實體層）。
- Splunk：不支援左聯結（因此，會與邏輯資料表建立關聯）。
- JSON：不支援同盟、自訂 SQL、聯結或關係（僅支援聯集）。
- 不支援 LOD 計算的資料來源。有關詳情，請參閱[詳細層級運算式的資料來源約束](https://help.tableau.com/current/pro/desktop/zh-tw/calculations_calculatedfields_lod_constraints.htm)。

有限支援

- Salesforce 和 WDC 標準連線：這些連線以邏輯資料表中的聯結表呈現。目前僅支援在單一邏輯表資料來源中新增這些連線。標準連線無法聯結到現有的表。
- SAP HANA：當連線具有 OLAP 屬性集時，目前不支援相關邏輯資料表。

**細微限制**

- 虛擬連線支援關係，但無法始終自動建議要關聯的欄位。若使用虛擬連線，則可能需要手動設定關係。

## 建立和定義關係

如果是單一基底資料表模型，在將第一個資料表拖曳到資料來源的頂層畫布後，拖曳到畫布上的每個新資料表都必須與現有資料表相關。為邏輯層中的表建立關係時，您也建立起了資料來源的資料模型。

在版本 2024.2 及之後版本中：如果是多基底資料表模型，每個新增至模型資料表必須在至少一個基底樹中關聯。有關更多資訊，請參閱 [建構多重要素關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_build.htm)。

### 建立關係

您是在資料來源的邏輯層建立關係。以下為您在「資料來源」頁面中看到的預設檢視畫布。

本主題中的步驟旨在解決如何為單一基底資料表模型設定關係。

在版本 2024.2 及之後版本中，可以建立單一基底資料表模型或多基底資料表模型。有關如何使用多基底資料表建立多重要素關係的資訊，請參閱 [建構多重要素關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_build.htm)。

1. 將一個表拖曳至畫布上。
    - 如果是單一基底資料表模型：新增到畫布的第一個資料表將成為基底資料表。新增的所有其他資料表都將與該資料表關聯。
    - 如果是多基底資料表模型：需要確定哪些資料表是基底資料表。要建立另一個基底資料表，請將資料表從左窗格拖曳到 新基底資料表拖放區域。有關更多資訊，請參閱 [建構多重要素關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_build.htm)。
2. 將其他表拖曳至畫布上。看到兩個資料表之間出現「關聯線」後，放下那個資料表。
    
    關係設定在「表格詳細資料」窗格中的畫布下方開啟。Tableau 會自動嘗試根據現有索引鍵限制和相符欄位來建立關係，進而定義關係。如果無法確定表之間的配對欄位或多個欄位配對，則需要手動定義關係。
    
    **要變更欄位**：選取欄位組，然後從下方的欄位清單中進行選取以設定一組新的配對欄位。
    
    **要新增多個欄位組**：請在選取第一組之後，按一下**「關閉」**，然後按一下**「新增更多欄位」**。
    
    如果未偵測到約束，則會建立**多對多**關係，且參考完整性會設定為**「部分記錄相符**」。這些預設設定是安全的選項，並且可為您的資料來源提供彈性。預設設定支援完整外部聯結，並可藉由在分析期間形成聯結之前彙總表資料，來優化查詢。每個表中的所有欄和列資料將可用於分析。
    
    在許多分析案例中，對關係使用預設設定可為您提供分析所需的所有資料。即使您的資料是多對一或一對一，您也可以使用多對多關係。如果您瞭解資料的特殊基數和參考完整性，可以調整[效能選項設定](https://help.tableau.com/v0.0/public/desktop/zh-tw/datasource_relationships_perfoptions.htm)，以便更精確地描述您的資料，並最佳化 Tableau 查詢資料庫的方式。
3. 依需要按照相同的步驟新增其他表格。
    
    ![將表格拖曳畫布上的過程 ](/tableau/next/zh-tw/public/desktop/zh-tw/Img/data_model_createrelationship.gif)
4. （選用）使用**「新增已發佈資料來源」**按鈕可引入其他已發佈資料來源進行關聯。在 Tableau 2026.2 及更高版本中可用。

在建立了含有多個表且互有相關的資料來源後，您就可以深入探索該筆資料了。有關詳情，請參閱[使用關係的資料來源的分析方式](https://help.tableau.com/v0.0/public/desktop/zh-tw/datasource_multitable_analysis_overview.htm)與[多資料表分析疑難排解](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_analysis_overview.htm#troubleshooting-multitable-analysis)。

**附註**：Salesforce 連接器不支援不等比較運算子。

### 新增關聯資料表

畫布上有表後，可以右鍵按一下該表以顯示其功能表。如果 Tableau 能夠根據資料庫中的外部索引鍵偵測關聯資料表，則有兩個選項可用：

- **尋找並新增直接關聯資料表（#）** - 這樣只會新增與目前表有關係的表
- **尋找並新增所有關聯資料表** - 此動作會新增與目前資料表以及與其相關的任何其他下游有關係的資料表。

若沒有看到這些選項，Tableau 無法自動偵測您的關係，將需要手動新增資料表。

自動建立的關係可以像任何手動關係一樣進行編輯和修改。

### 移動表格以建立其他關係

若要移動表格，請將其拖曳至其他表格旁邊。或暫留在表上，選取箭頭，然後選取**「移動」**。

![將表格新增到畫布並移動它以建立與不同表格的關係過程](/tableau/next/zh-tw/public/desktop/zh-tw/Img/data_model_moverelationship.gif)

**提示**：將表格拖曳至另一個表格的頂部以取代它。

### 變更資料模型的根目錄資料表或基底資料表

您可以將根資料表或底圖資料表與另一個下游資料表交換。以右鍵按一下資料模型中的另一個邏輯資料表，然後選取「與根目錄資料表交換」或「與基底資料表（資料表名稱）交換」以進行變更。

### 從關係中移除表格

如要移除表，請暫留在表上，選取箭頭，然後選取**「移除」**。

![從畫布中移除表格的過程](/tableau/next/zh-tw/public/desktop/zh-tw/Img/data_model_removerelationship.gif)

刪除畫布中的表後，也將自動刪除其相關的下級。

### 檢視關係

將游標暫留在關係線（關聯線）上可查看定義該關係的相符欄位。您也可以將游標暫留在任何邏輯資料表上以查看的內容。  
  
![暫留在表格上以顯示表格之間如何相互關聯的過程](/tableau/next/zh-tw/public/desktop/zh-tw/Img/data_model_tooltips.gif)  

### 編輯關係

選取關係線可在「資料表詳細資料」窗格中開啟關係設定。您可以新增、變更或移除用來定義關係的欄位。新增更多欄位對可建立複合關係。

- 要新增多個欄位組：請在選取第一組之後，按一下**「關閉」**，然後按一下**「新增更多欄位」**。  
      
    ![將預設關係編輯為其他關係的過程](/tableau/next/zh-tw/public/desktop/zh-tw/Img/data_model_editfields.gif)

### 建立關係的提示

- 拖曳至畫布的第一個表將成為資料來源中的資料模型的根目錄資料表或基底資料表。拖曳基底資料表後，即可按任意順序拖曳更多資料表。您必須考量哪些表應相互關聯，以及您為每個關係定義的相符欄位配對。
- 在開始建立關係之前，建議您在分析之前或期間檢視資料來源中的資料，以便對各表的範圍取得大致瞭解。有關詳情，請參閱[檢視基礎資料](https://help.tableau.com/v0.0/public/desktop/zh-tw/inspectdata_viewdata.htm)。如果關係無效，您也可以使用「檢視資料」查看表格的基礎資料。
- 如果使用星形結構描述中的資料，使用多事實關係會很有幫助。有關詳情，請參閱[關於多事實關係資料模型](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_multiple_base_tables.htm)
- 每個關係都必須至少由一個相符的欄位對組成。新增多個欄位對可建立複合關係。基礎資料庫中的配對組必須具有相同的資料類型。變更「資料來源」頁面中的資料類型，並不會變更此需求。Tableau 仍將使用資料庫中的資料類型進行查詢。
- 關係可以基於計算欄位。定義關係時，還可以透過使用運算子指定應如何比較欄位。
- 刪除畫布中的表後，也將自動刪除其相關的下級。
- 可以將根目錄資料表（版本 2020.2 至 2024.1）或基底資料表（版本 2024.2 及之後版本）與另一個下游資料表交換。以右鍵按一下資料模型中的另一個邏輯資料表，然後選取「與根目錄資料表交換」或「與基底資料表（資料表名稱）交換」以進行變更。

## 驗證資料來源中的關係

有多個選項可用來驗證資料模型以進行分析。當您為資料來源建立模型時，我們建議前往工作表，選取該資料來源，然後建置視覺效果以探索記錄計數、不符的值、null 值或重複的度量值。請嘗試使用不同表中的欄位，以確定一切行為都如您所預期。

要查找的內容：

- 您在資料模型中的關係是否使用符合其表的正確欄位？
- 將不同的維度和度量拖曳至檢視中，會產生什麼結果？
- 您是否看到預期的列數？
- 複合關係會使關係更準確嗎？
- 如果您將任何[效能選項設定](https://help.tableau.com/v0.0/public/desktop/zh-tw/datasource_relationships_perfoptions.htm)變更為非預設的設定，在視覺效果中的值是否符合預期？如果沒有，請檢查設定，或重設為預設值。

驗證關係與資料模型的選項：

- 每個表在該表的詳細層級都會包含其記錄的計數，以名為 _TableName(Count)_ 的欄位表示。若要查看表的計數，請將「計數」欄位拖曳至檢視中。若要查看所有表的計數，請在「資料」窗格中，選取每個表的「計數」欄位，然後選取「顯示」中的「文字表」。
- 選取「資料」窗格中的**「檢視資料」**，以查看每個表的列數和資料。此外，在開始建立關係之前，在分析之前或期間檢視資料來源中的資料，可能有助於您瞭解每個表的範圍。有關詳情，請參閱[檢視基礎資料](https://help.tableau.com/current/pro/desktop/zh-tw/inspectdata_viewdata.htm)。
- 將維度拖曳到列，以查看狀態列中的「列數」。若要查看不符合的值，請選取**「分析」**功能表，然後選取「表配置」\>「顯示空列」或「顯示空欄」。您也可以將不同的維度拖曳到檢視，例如，視覺效果中呈現之其中一個表的 _<YourTable>(Count)_。這樣可確保您看見來自該表之維度的所有值。

**提示**：若要查看針對關係所產生的查詢，可以使用 Tableau Desktop 中的效能記錄程式。

1. 選取「說明」功能表，然後選取**「設定和效能」**\>**「啟動效能記錄」**。
2. 將欄位拖曳到檢視中以建立視覺效果。
3. 選取「說明」功能表，然後選取**「設定和效能」**\>**「停止效能記錄」**。
4. 在「效能摘要」儀表板窗格中的「依時間排序的事件」下，選取「執行查詢」列，並檢視下方查詢。

另一個更進階的選項，是使用 GitHub 上的 [Tableau 記錄檢視器](https://github.com/tableau/tableau-log-viewer)。您可以使用 `end-protocol.query` 來篩選特定關鍵字。有關詳情，請先參閱 GitHub 中的 [Tableau 記錄檢視器 Wiki 頁面](https://github.com/tableau/tableau-log-viewer/wiki)。

### 僅維度視覺效果

將多表資料來源與相關資料表搭配使用時：如果建置僅維度的視覺效果，Tableau 會使用內部聯結，而且您無法看到完整的不相符網域。

若要查看維度值的部分組合，您可以：

- 使用「顯示空列/欄」以查看所有可能的列。選取**「分析」**功能表，然後選取「表配置」\>「顯示空列」或「顯示空欄」。
- 將度量新增到檢視中，例如，視覺效果中呈現之其中一個表的 _<YourTable>(Count)_。這樣可確保您看見來自該表之維度的所有值。

有關詳情，請參閱[多表與單一表資料來源的分析](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_analysis_overview.htm)和[多資料表分析疑難排解](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_analysis_overview.htm#troubleshooting-multitable-analysis)。

## 關係（邏輯表）與聯結（實體表）

儘管相似，但聯結和關係在 Tableau 中的行為是不同的，而且是在[資料模型的不同層定義的](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_datamodel.htm)。您可以在資料來源之上層邏輯層中的邏輯表之間建立關係。您可以在資料來源實體層的實體表之間建立聯結。

在分析開始之前，聯結會將兩個表的資料合併到單一表中。將表合併在一起可能會導致從單一或兩個表中複製或篩選資料；如果您使用左、右或完全外部聯結，也可能會導致資料中新增 NULL 列。對聯結資料進行分析時，您必須確保正確處理聯結對資料的影響。

**附註**：可能需要複製或篩選聯結的效果時，請使用聯結將資料表合併在一起，而不是使用關係。按兩下邏輯資料表以開啟實體層並新增聯結的表。

關係會描述兩個獨立的表彼此如何關聯，但不會將表合併在一起。這樣可以避免聯結中可能出現的資料重複和篩選問題，也能讓您更輕鬆地處理資料。

| 關係 | 聯結 |
| --- | --- |
| 在關係畫布（邏輯層）中的邏輯資料表之間定義 | 在聯結/聯集畫布（實體層）的實體資料表之間定義 |
| 您不需要定義聯結類型 | 需要聯結規劃和聯結類型 |
| 類似於聯結或聯集表的容器 | 已合併到其邏輯表中 |
| 僅查詢與視覺效果相關的資料。可以調整基數和參考完整性設定以最佳化查詢。 | 做為每個查詢的一部分執行 |
| 詳細層級位於視覺效果的彙總 | 詳細層級位於單一表的列層級 |
| 聯結類型是 Tableau 根據分析內容自動形成。Tableau 會根據視覺效果中的度量和維度決定所需聯結。 | 聯結類型是靜態的，而且在資料來源中是固定的，與分析內容無關。聯結和聯集是在分析之前建立的，而且不會變更。 |
| 列不重複 | 合併的表資料可能會導致重複 |
| 除非明確排除，否則彙總會包含不相符的記錄 | 合併資料中會省略不相符的記錄 |
| 在多個詳細資料層級建立獨立網域 | 支援需要單一資料表的情境，例如擷取篩選條件和彙總 |

## 關係與混合

雖然關係和混合皆支援不同詳細層級的分析，但它們有明顯的差異。透過關係使用混合的其中一個原因是為了合併發行資料來源以供分析使用。

| 關係 | 混合 |
| --- | --- |
| 定義於資料來源 | 定義於主要資料來源和次要資料來源之間的工作表 |
| 可發布 | 無法發布 |
| 所有表在語意上皆相等 | 取決於主資料來源和輔助資料來源的選擇，以及這些資料來源的架構方式。 |
| 支援完整外部聯結 | 僅支援左聯結 |
| 本機運算 | 做為 SQL 查詢的一部分進行運算 |
| 相關欄位已修復 | 相關欄位因工作表而各不相同（可以按照工作表逐一自訂） |

## 合併資料的不同選項功能：關係、聯結和混合

有許多方式可以合併資料表，且每種方式都有其首選方案和細微差別。

<table style="margin-left: 0;margin-right: auto;"><colgroup><col style="width: 50px;"><col style="width: 200px;"></colgroup><tbody class="table--stripes"><tr><td><b>建立關聯</b></td><td><p>合併不同詳細層級的資料時，會使用此功能。</p><ul><li>需要兩個邏輯表之間的相符欄位。多個相符欄位對可以定義關係。</li><li>根據欄位的關聯程度以及在視覺效果中的使用方法，自動使用正確的彙總和內容聯結。</li><li>支援多對多和外部聯結。</li><li>關係對於整個工作簿是一致的，而且可以發布。</li><li>可用於合併已發佈資料來源。</li><li>無法根據地理欄位來定義關係。</li><li>使用資料來源篩選條件限制了關係的聯結挑選優勢。</li></ul></td></tr><tr><td><b>聯結</b></td><td><p>當您想要跨相同列結構新增多欄資料時，會使用此功能。</p><ul><li>需要兩個實體表之間的常用欄位。</li><li>需要建立聯結子句和聯結類型。</li><li>聯結的實體表會合併至具有固定資料組合的單一邏輯表。</li><li>如果所有表中不存在欄位或值，則可能會造成資料遺失（視所用聯結類型而定）。</li><li>如果欄位處於不同的詳細層級，則可能會造成資料重複。</li><li>可以使用資料來源篩選條件。</li></ul></td></tr><tr><td><b>聯集</b></td><td><p>當您想新增更多具有相同欄結構的資料列時，會使用此功能。</p><ul><li>以兩個表之間的相符欄為依據。</li><li>聯集的實體表會合併至具有固定資料組合的單一邏輯表。</li></ul></td></tr><tr><td><b>混合</b></td><td><p>合併不同詳細層級的資料時，會使用此功能。</p><ul><li>可與已發佈資料來源合併，但無法發佈。</li><li>可以在關係資料來源和 Cube 資料來源之間使用。</li><li>資料來源可以按照工作表逐一進行混合。</li><li>始終保持有效的左聯結（可能會遺失次要資料來源的資料）。</li></ul></td></tr></tbody></table>

## 此區段的其他文章