---
schema_version: "1"
id: 94a187a6c8a2a1005475b2d5eb3b46198a3a7babb9578af697feb58838501f27
title: 關於多事實關係資料模型
collection: tableau
version: current
locale: zh-tw
portal_url: https://docs.salesforce.com/tableau/current/zh-tw/server-linux/datasource_mfr_multiple_base_tables.md
canonical_url: https://help.tableau.com/current/server-linux/zh-tw/datasource_mfr_multiple_base_tables.htm
source_site: help.tableau.com
content_type: documentation
content_hash: e197168197606110fdea8ff4c4a37bd94af049e8cde160754ba490e901a9e526
description: Understand multi-fact relationship data models that use multiple base tables and relatedness levels.
---
[跳至主要內容](#main-content)

# 關於多事實關係資料模型

多事實關係可讓您使用多個_基底資料表_建置資料來源。在資料模型中使用多個基底資料表可讓您在 Tableau 中執行多事實分析。

透過建立以基底資料表為根的資料表_樹狀結構_，可以對具有不同概念域的資料結構進行建模，並使用其共用特性對其進行連線。這種類型的分析通常稱為多事實分析，維度一致或共用維度。在 Tableau 中，我們將其稱為多事實關係資料模型，因為資料模型使用關係建置。多事實關係資料模型始終包含多個基底資料表。基底資料表是資料模型中最左邊的資料表。有關如何確定將哪些資料表用作基底資料表的指南，請參閱[何時使用多重要素關係模型](https://help.tableau.com/current/server-linux/zh-tw/datasource_mfr_when_to_use.htm)。

![多基底資料表模型，醒目提示一個樹狀結構](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_build_highlightedtree.png)

多基底資料表資料模型，醒目提示一個基底資料表樹狀結構。

## 關聯性層級

具有多個基底資料表的資料模型在資料片段如何相互關聯或不關聯方面具有很大的彈性。

**附註**：任何層級的關聯性僅適用於具有多個基底資料表的資料模型。在多事實關係資料模型出現之前，要麼所有內容都關聯（在單一資料來源內），要麼沒有任何內容關聯（跨多個資料來源進行混合）。

**資料模型中的關聯性**

根據資料模型的結構，資料表分為關聯、非關聯或共用資料表。在資料來源中，資料表的關聯性始終不變。簡要概觀： 

- _關聯資料表_位於同一個樹狀結構。
    - 在 2024.2 之前，所有資料來源都是由單一樹狀結構組成的單一基底資料表資料來源，並且在單一基底資料表資料來源中，所有資料表關聯。
- _非關聯資料表_位於不同的樹狀結構。基底資料表始終彼此不關聯。位於一個基底資料表下游的資料表也與其他樹狀結構中的資料表不關聯。
- _共用資料表_具有多個傳入關係，並且屬於多個樹狀結構。
    - 具有多個傳入關係的資料表下游的資料表也被視為共用。

**分析期間的關聯性**

欄位可以關聯、不關聯、尚未關聯、不明確關聯，或者充當拼接欄位。一組欄位之間的關聯性根據資料模型的結構、哪些欄位正在使用中（即作為膠囊放在架上）以及這些欄位是維度還是度量按工作表逐個確定。

![簡單的視覺效果，顯示兩個非關聯欄位（一個位於列上，一個位於欄上），以及非關聯工具提示](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_unrelatedtooltip_example.png)

若要使用多個資料表中的欄位製作視覺效果，Tableau 必須在幕後執行聯結來計算值。使用的聯結類型取決於[欄位的關聯性](#fieldlevel)。簡要概觀： 

- 在視覺效果中使用_關聯欄位_時，維度會進行內部聯結，且度量值會按維度進行細分。
    - 情況比這更複雜一些 — 可能需要在幕後進行額外聯結，以確保[不會丟棄任何度量值](https://www.tableau.com/zh-tw/blog/relationships-tableau-data-model)。但在僅維度視覺效果中，關聯維度會進行內部聯結，這是這裡的主要概念。
    - 這與單一基底資料表模型的行為相同。
- 在視覺效果中使用_非關聯欄位_ ![](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_icon_unrelated.png "非關聯圖示") 時，維度會進行交叉聯結。度量值以資料表為範圍（即在本機彙總為整個資料表的單一值）並重複。
    - 欄位也可能_尚未關聯_或_不明確_關聯，這意味著對於使用中欄位的組合，有不只一種方法可以解析其資料表之間的關係。若 Tableau 遇到不確定的情況，會將這些欄位視為不關聯。
- 基於共用欄位_拼接_ ![](/tableau/current/zh-tw/server-linux/zh-tw/Img/MFR_icon_related.png "拼接圖示") 欄位時，維度會進行外部聯結。度量值會在可以細分的任何維度層級進行彙總，並且可能重複。
    - _拼接維度_類似於[資料混合中的連結欄位](https://help.tableau.com/current/pro/desktop/zh-tw/multiple_connections.htm#define-blend-relationships-for-blending)。系統會計算每對關聯欄位的結果，然後透過它們之間共用的維度的共用值將非關聯值拼接在一起。

本主題後面將更詳細地討論所有這些概念和定義。

關於維度和度量的旁白

在 Tableau 中，_度量_為_彙總_ - 它們會彙總到檢視中_維度_設定的_粒度_。因此，度量的值取決於維度的內容。例如，「麥片盒數量」取決於我們指的是總庫存，還是每個品牌的盒數。

_維度_通常為分類欄位，例如國家/地區或品牌。在 Tableau 中，維度設定檢視的粒度或_詳細資料層級_。我們通常希望透過某種類別組合將資料分組為標記。我們用來建置檢視的維度決定了我們有多少標記。

使用沒有維度的度量時，稱其為_以資料表為範圍_。這意味著其值是整個資料表的完全彙總值。一旦我們在視覺效果中使用諸如品牌之類的維度，度量就會以更精細的方式被細分。現在麥片盒的總數已細分為每個品牌的盒數。

_彙總_指如何合併資料。Tableau 的預設彙總為 SUM(總和)。可以將彙總變更為其他選項，包括：平均值、中位數、計數（相異）、最小值等。_粒度_指度量的詳細程度或細分程度－由維度控制。除非度量的粒度為列層級（也稱為已分解），否則其值必須彙總。

#### 範例

![五個品牌和三種尺寸的麥片盒數量值資料表](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_cereal_rawdata.png)

「麥片盒數量」的值是多少？

這取決於彙總類型和維度設定的粒度。

- 彙總：
    - 總和（或總計）
    - 平均值
- 粒度：
    - 以資料表為範圍/完全彙總（範例中的藍色橫條）
    - 按**品牌**維度細分（範例中的彩色橫條）

![包含四個視覺效果的儀表板，一個顯示以資料表為範圍的總盒數(54)，一個顯示以資料表為範圍的平均盒數(6)，然後是這兩個視覺效果按五個品牌細分的版本](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_cereal.png)

## 欄位層級關聯性指標

有一些視覺線索可以幫助您瞭解分析中使用的欄位的關聯程度。

### 工作表上的關聯性指標

- **非關聯圖示**：Tableau 使用非關聯圖示 ![非關聯圖示](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_icon_unrelated.png) 表示檢視中的所有內容並非都關聯。若在檢視或資料窗格中的膠囊上看到非關聯圖示，可以將滑鼠暫留在該圖示上，[以取得更多資訊](https://help.tableau.com/current/pro/desktop/zh-tw/mfr_latedness_messages.htm)。
    - 關聯圖示 ![](/tableau/current/zh-tw/server-linux/zh-tw/Img/MFR_icon_related.png "拼接圖示") 表示欄位正在將非關聯欄位拼接在一起。
- **淺灰色欄位名稱**：欄位名稱與架上使用的_任何_欄位不關聯時，欄位名稱會在資料窗格中以淺灰色文字顯示。您仍然可以在該視覺效果中使用這些欄位進行分析，但在分析中，非關聯欄位與關聯欄位的[評估方式不同](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_multiple_base_tables.htm#joinsbylatedness)。滑鼠暫留時，這些欄位也會顯示一個非關聯圖示。

![資料窗格，整個資料表呈灰色，兩個欄位帶有劃斜線的眼睛圖示，表示隱藏欄位](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_gray_datapane.png)

**附註**：在 Tableau 的先前版本中，淺灰色欄位名稱表示欄位已隱藏，並且已選取顯示隱藏欄位。隱藏欄位現在顯示時用可點擊的眼睛圖示 ![隱藏欄位圖示](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_icon_hidden.png) 表示。

### 關聯性警告對話方塊

在視覺效果中一起使用非關聯欄位時，Tableau 會顯示警告對話方塊，讓您知道這些欄位不關聯。每次新增非關聯欄位時都會出現此警告，以防止出現可能影響效能的意外交叉聯結。

- 若想要使用非關聯欄位而不進行拼接，請按一下「新增」，以繼續將欄位新增至視覺效果。
- 若想要拼接非關聯欄位，最佳做法是在原本非關聯欄位之前顯示拼接欄位。若拼接欄位已在使用中，則該對話方塊不會顯示。有關拼接如何防止進行交叉聯結的更多資訊，請參閱[如何將聯結用於每個關聯性層級](#joinsbyrelatedness)。

![關聯性警告對話方塊顯示非關聯維度的警告](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_unrelated_dialog_simple_v2.png)

檢視中正在新增多個欄位或已存在多個欄位時，對話方塊中會顯示詳細資訊區域。展開該區域以查看有關所有正在使用中欄位的關聯性的更多資訊，並確定非關聯性問題的根源。

![關聯性警告對話方塊，其中包含非關聯維度和度量的訊息，並且詳細資訊區域已展開](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_unrelated_dialog_details_v2.png)

若要完全停止顯示警告訊息，請選取「不再顯示此訊息」選項。始終可以透過重新開啟這些警告訊息來重新啟用它們：

- 在 Tableau Desktop 中，開啟說明功能表 > 設定和效能 > 重設忽略的訊息。
- 在瀏覽器中，清除快取資料。例如，在 Chrome 中，開啟 **3 點功能表** > **刪除瀏覽資料...**\> 選擇「**快取影像和檔案**」> **刪除資料**。

## 資料模型中的資料表層級關聯性

在具有多個基底資料表的資料模型中，每個基底資料表定義一組關聯資料表，並形成概念_樹狀結構_。這些樹狀結構必須透過至少一個共用資料表進行連線，以確保整個資料來源為單一實體。

先前可能是可以使用連結欄位混合的兩個資料來源，現在可以是具有兩個樹狀結構的單一資料來源，兩個樹狀結構透過包含公用欄位的共用資料表進行連線。

![兩個資料模型，一個由兩個不同的資料來源組成，另一個由疊加在其共有資料表上的兩個資料來源組成，以形成單一資料來源](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_blending_comparison.png)

> [!TIP]
> 
> **提示**：資料表在資料模型中的關聯方式會影響其欄位在分析中的關聯方式。在分析過程中使用[「檢視資料模型」](https://help.tableau.com/current/pro/desktop/zh-tw/viewdatamodel.htm)對話方塊來查看資料表如何融入整體資料模型可能會很有用。

讓我們使用此範例資料來源來逐步解說哪些資料表為關聯、非關聯或共用資料表。有兩個樹狀結構，一個由基底資料表 A 建立，一個由基底資料表 B 建立。

### 非關聯資料表

基底資料表根本上是不關聯的。同樣，任何僅存在於單一樹狀結構中的資料表都與其他樹狀結構中的資料表不關聯。

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 50%;"><col style="width: 50%;"></colgroup><tbody><tr><td><p>資料表 A 和資料表 X 不關聯</p></td><td><p>資料表 B 和資料表 X 不關聯</p></td></tr><tr><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_tables_unrelatedbase.png" alt="資料模型，其中基底資料表 A 和 X 有自己的大綱。關係以淺灰色顯示。"></td><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_tables_unrelateddownstream.png" alt="資料模型，其中基底資料表 A 及其下游資料表 B 共用大綱。基底資料表 X 有自己的大綱。關係以淺灰色顯示。"></td></tr></tbody></table>

### 關聯資料表

同一樹狀結構中的資料表被視為關聯。

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 50%;"><col style="width: 50%;"></colgroup><tbody><tr><td><p>資料表 A 和資料表 S 關聯</p></td><td><p>資料表 B 和資料表 S 關聯（透過資料表 A）</p></td></tr><tr><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_tables_related1.png" alt="資料模型，其中強調基底資料表 A 與下游資料表的關係"></td><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_tables_related2.png" alt="資料模型，其中資料表 B 與另一個資料表的關係透過它們與同一基底資料表 A 的關係來強調"></td></tr></tbody></table>

### 共用資料表

共用資料表具有多個傳入關係。這些資料表屬於多個樹狀結構，並在它們之間共用。

資料表 S 和資料表 T 為共用。

![資料模型，其中資料表 S 和 T 都具有多個傳入關係。它們都屬於基底資料表 A 的樹狀結構和基底資料表 X 的樹狀結構。 ](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_tables_shared.png)

## 分析中的欄位層級關聯性

欄位之間的關聯性根據[資料模型的結構](https://help.tableau.com/current/pro/desktop/zh-tw/viewdatamodel.htm)、哪些欄位正在使用中（即視覺效果中哪些欄位作為膠囊放在架上）以及這些欄位是維度還是度量按工作表逐個確定。[下一節](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_multiple_base_tables.htm#joinsbylatedness)將介紹欄位關聯性如何影響視覺效果的結果。

讓我們使用相同的範例資料來源來逐步解說一些情境。每個欄位的名稱表示其來自哪個資料表，例如欄位 B 來自資料表 B。除非另有說明，否則欄位可以為維度或度量。

### 關聯欄位

從高層級來看，Tableau 可以根據單一樹狀結構中的關係路徑清楚地決定如何一起評估欄位時，欄位就是關聯的。

例如，欄位 B（來自資料表 B）和欄位 S（來自資料表 S）關聯。

![欄位 B 和欄位 S 關聯](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_tables_related2.png)

### 非關聯欄位

從高層級來看，欄位不關聯時，它們在任何情況下都是不關聯的。這可能是因為這些欄位來自非關聯資料表，例如使用來自兩個基底資料表的欄位。在這種情況下，來自不同基底資料表的欄位根本上是不關聯的。

例如，欄位 A 和欄位 X 不關聯。

![欄位 A 和欄位 X 不關聯](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_tables_unrelatedbase.png)

或者，在某個時間點，欄位可以被視為不關聯，例如在不明確或尚未關聯的情況下。在大多數情況下，視覺效果內容中的欄位不關聯時，可以依靠[關聯性指標](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_latedness_messages.htm)來提醒您。

### 拼接維度

拼接是 Tableau 在分析過程中評估多事實資料模型中非關聯資料表中欄位的方式。在視覺效果中，使用共用資料表中的維度可以將原本非關聯欄位拼接在一起，並允許在同一視覺效果中對其同時進行評估。可以將其視為根據兩個樹狀結構共用的維度將兩個樹狀結構的結果並列在一起。

例如，若視覺效果是使用欄位 A 和欄位 X 建置的，則這兩個欄位不關聯。新增維度 S 引入了拼接欄位。

- 欄位 A 和維度 S 會一起進行評估。
- 欄位 X 和維度 S 會一起進行評估。
- 這些中間結果會根據維度 S 的值匯集在一起。
- 欄位 A 和欄位 X 現在已拼接。

![非關聯基底資料表 A 和 X 透過其共用資料表 S 拼接在一起](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_fields_stitching.png)

**提示**：最佳做法是在顯示非關聯欄位之前在視覺效果中使用拼接欄位。例如，先拖出維度 S，或先拖出欄位 A，再拖出維度 S，然後再拖出欄位 X，而不是先拖出欄位 A，再拖出欄位 X，然後再拖出維度 S。首先新增拼接欄位可確保 Tableau 始終瞭解如何評估關係，並避免因一起評估非關聯維度和交叉聯結而導致潛在的效能問題。

拼接需要共用資料表中的維度在視覺效果中處於使用中狀態。出於拼接目的，放置在篩選器架或標記卡「工具提示」屬性上的欄位不會被視為處於使用中狀態。

### 尚未關聯欄位

欄位還可能有多種關聯方式，但目前尚未關聯。兩個共用資料表（或下游共用資料表）之間存在不只一種可能的關係時，就會發生這種情況。

請考慮欄位 S 和欄位 T。它們的資料表透過基底資料表 A 定義的樹狀結構和基底資料表 X 定義的樹狀結構相互關聯。

在僅包含欄位 S 和欄位 T 的視覺效果中，沒有關於應使用哪個樹狀結構來關聯它們的資訊。若沒有附加訊息，Tableau 無法評估是透過基底資料表 A 的樹狀結構還是基底資料表 B 的樹狀結構關聯這些欄位。

儘管存在多種_潛在_關係，但欄位 S 和欄位 T 被視為不關聯。

![關聯不足的不明確欄位 S 和 T](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_fields_not-yet_hyporelated.png)

這些可能但尚未關聯的欄位被評估為不關聯，因為 Tableau 無法清楚地確定它們的關係路徑。與只能拼接的真正非關聯欄位不同，尚未關聯欄位可以進行解析，並且欄位可以直接關聯。

### 不明確關聯欄位

欄位也可能不明確關聯。共用資料表（或下游共用資料表）之間存在多個使用中的可能關係時，就會發生這種情況。與可以被認為是低關聯或關聯不足的尚未關聯欄位不同，不明確關聯欄位為高度關聯或過度關聯。

請考慮欄位 S 和欄位 T。它們的資料表透過基底資料表 A 定義的樹狀結構和基底資料表 X 定義的樹狀結構相互關聯。

在包含欄位 A、欄位 X、欄位 S 和欄位 T 的視覺效果中，資訊太多，無法決定應使用哪個樹狀結構來關聯它們。若不修剪資訊，Tableau 無法評估是透過基底資料表 A 的樹狀結構還是基底資料表 B 的樹狀結構來關聯這些欄位。

儘管存在多個_使用中_關係，但欄位 S 和欄位 T 被視為不關聯。

![](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_fields_ambiguous_hyperrelated.png "過度關聯")

這些不明確關聯欄位被評估為不關聯，因為 Tableau 無法清楚地確定它們的關係路徑。與只能拼接的真正非關聯欄位不同，不明確關聯欄位可以進行解析，並且欄位可以直接關聯。

### 共用資料表中的不明確度量

從共用資料表使用維度時，它會將來自其非關聯上游資料表的欄位拼接在一起。但是，度量無法拼接，且度量的值取決於其關聯維度。

在具有維度 A 和維度 X 的視覺效果中，這兩個維度不關聯。若度量 S 是從資料表 S 中取出的，則它與維度 A 和維度 X 的組合不關聯。儘管它可以獨立地與其中任何一個維度關聯，但它不能在同一視覺效果中同時與這兩個維度關聯。

![非關聯基底資料表 A 和 X 透過其共用資料表 S 拼接在一起](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_relatedness_fields_stitching.png)

共用度量可以被視為一種不明確性或過度關聯性，並以相同的方式進行解析。

### 解析欄位之間不明確的關係

不確定如何關聯欄位時，Tableau 不會做出任意決定，而是將它們視為不關聯。通常，關聯這些欄位的更好做法是，澄清要使用哪個樹狀結構的不確定性。

解析尚未關聯欄位的方法是，新增欄位來確定要使用的樹狀結構。解析不明確關聯欄位的方法是，移除欄位來確定要使用的樹狀結構。

_範例：_

**解析尚未關聯欄位**：新增欄位

- 在欄位 S 和欄位 T 的視覺效果中，將資料表 A、B 或 C 中的欄位新增至視覺效果可讓基底資料表 A 的樹狀結構處於使用中狀態，並解析欄位 S 和欄位 T 之間的所需路徑。
- 或者，使用資料表 X 中的欄位可將欄位 S 和欄位 T 之間的所需路徑解析為基底資料表 X 的樹狀結構。

**解析不明確關聯欄位**：移除一個或多個欄位

- 在欄位 A、欄位 X、欄位 S 和欄位 T 的視覺效果中，移除欄位 X 只會讓基底資料表 A 的樹狀結構處於使用中狀態，並解析欄位 S 和欄位 T 之間的所需路徑。
- 或者，移除欄位 A 可透過基底資料表 X 的樹狀結構解析欄位 S 和欄位 T 之間的所需路徑。

**解析共用度量**：移除一個或多個欄位

- 在維度 A、維度 X 和度量 S 的視覺效果中，移除維度 X 只會讓基底資料表 A 的樹狀結構處於使用中狀態，並解析維度 A 和度量 S 之間的所需路徑。
- 或者，移除維度 A 可透過基底資料表 X 的樹狀結構解析維度 X 和度量 S 之間的所需路徑。

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 25%;"><col style="width: 25%;"><col style="width: 25%;"><col style="width: 25%;"></colgroup><tbody><tr><td style="text-align: center;" rowspan="2"><b>尚未關聯</b></td><td style="text-align: center;" rowspan="2"><b>不明確關聯</b></td><td colspan="2" style="text-align: center;"><b>關聯性被解析為單一樹狀結構</b></td></tr><tr><td style="text-align: center;">透過基底資料表 A 關聯</td><td style="text-align: center;">透過基底資料表 X 關聯</td></tr><tr><td style="text-align: center;"><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_not-yet_hyporelated.png" alt="關聯不足"></td><td style="text-align: center;"><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_ambiguous_hyperrelated.png" title="過度關聯" alt=""></td><td style="text-align: center;"><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_context_a.png" alt="透過 A 關聯"></td><td style="text-align: center;"><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_context_x.png" alt="透過 X 關聯"></td></tr></tbody></table>

解析不確定性類似於使用 FIXED 詳細資料層級 (LOD) 運算式。在 FIXED LOD 運算式中，可以透過定義維度聲明來告知 Tableau 要彙總到的詳細資料層級。透過變更視覺效果的結構以僅讓一個樹狀結構處於使用中狀態，可解析不確定性，從而告知 Tableau 可以考慮哪些關係路徑來執行分析。

### 拼接與解析不確定性

拼接和解析不確定性都是處理非關聯性的方法，但它們有不同的結果：

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 50%;"><col></colgroup><tbody><tr><td><p>拼接</p></td><td><p>解析不確定性</p></td></tr><tr><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_stitching.png" alt="將 A 和 X 與 S 拼接"><p><span class="caption">非關聯欄位 A 和欄位 X 由維度 S 拼接</span></p></td><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_relatedness_fields_context_a.png" alt="透過 A 解析 S 和 T"><p class="caption">欄位 S 和欄位 T 透過基底資料表 A 定義的樹狀結構進行評估</p></td></tr><tr><td>根據共用屬性並列非關聯欄位</td><td>存在多個選項（不明確性或共用度量）時縮小要使用的關係路徑，或沒有選項（尚未關聯）時建立關係路徑。</td></tr><tr><td><p>使用多個基底資料表邏輯來計算結果</p></td><td><p>使用單一基底資料表邏輯計算結果</p></td></tr><tr><td>分析涉及非關聯資料表</td><td>分析涉及共用資料表</td></tr></tbody></table>

## 如何將聯結用於每個關聯性層級

確定欄位層級關聯性後，Tableau 必須評估結果以建立實際的視覺效果。用於計算視覺效果中顯示的值的查詢依賴於聯結。欄位是關聯的、不關聯的，還是拼接的，對執行的聯結有不同的影響。請記住，在此內容中，不明確關聯和尚未關聯欄位會被視為不關聯。

為解釋關聯性和聯結，本節會介紹資料表及其欄位，以及這些欄位中的值。請考慮以下資料模型，其中包含兩個基底資料表「課程」和「社團」，以及一個共用資料表「學生」。

![資料模型，具有兩個基底資料表（「課程」和「社團」）以及一個共用資料表（「學生」）](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_model.png)

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 34%;"><col style="width: 33%;"><col></colgroup><tbody><tr><td><p>課程</p></td><td><p>社團</p></td><td><p>學生</p></td></tr><tr><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_ex_birds_table_classes.png" alt="「課程」資料表的檢視資料，顯示三個欄位的值"></td><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_ex_birds_table_clubs.png" alt="「社團」資料表的檢視資料，顯示三個欄位的值"></td><td><img src="https://help.tableau.com/current/server-linux/zh-tw/Img/mfr_ex_birds_table_students.png" alt="「學生」資料表的檢視資料，顯示三個欄位的值"></td></tr><tr><td><p>欄位：</p><ul><li><b>課程</b>，維度，值為「築巢基礎知識」、「進階歌曲」、「雛鳥飛行」、「警報呼叫 101」</li><li><b>時長</b>，度量</li><li><b>學生</b>，維度，用於與「學生」資料表進行關聯</li></ul></td><td><p>欄位：</p><ul><li><b>社團</b>，維度，值為「攝影」、「旅行」、「雜耍」、「藝術」和「急救」</li><li><b>會費</b>，度量</li><li><b>學生</b>，維度，用於與「學生」資料表進行關聯</li></ul></td><td><p>欄位：</p><ul><li><b>公車乘客</b>，維度，值為「是」或「否」</li><li><b>學生</b>，維度，值為 Finch、Cardinal、Sparrow、Robin 和 Jay。用於關聯其他兩個資料表</li><li><b>年齡</b>，度量</li></ul></td></tr></tbody></table>

這個非常簡單的模型可闡明如何為多事實關係資料模型計算高層級聯結邏輯。有關在基於關係建置的單一基底資料表資料模型中使用的聯結基礎知識的詳細資訊，請參閱[使用關係的多資料表資料來源的分析方式](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_multitable_analysis_overview.htm)。

這個範例可以成為具有多個基底資料表的資料模型嗎？

對於這個具有三個資料表的資料模型，可能會傾向於將其設定為單一基底資料表模型，如「課程-學生-社團」或「社團-學生-課程」，或以「學生」作為基底資料表。通常，多事實關係資料模型適用於特定類型的資料結構描述或分析情境。若您的資料模型[具有最適合多事實關係資料模型的特性](https://help.tableau.com/current/pro/desktop/zh-tw/datasource_mfr_when_to_use.htm)，請以這種方式進行設定，以保持基底資料表在概念上不關聯。但是，若您的資料不需要這種類型的結構，則使用單一基底資料表模型可能會更簡單。

![「課程-社團-學生」範例模型的替代資料模型結構](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_model_versions.png)

可以為這三個資料表建置的模型：(1) 「課程」和「社團」作為基底資料表，「學生」作為共用資料表，(2) 採用線性方式，以「課程」或「社團」開始，以及(3) 「學生」作為單一基底資料表，「課程」和「社團」作為下游資料表。

在這個特定的實例中，這些資料表、資料或模型並不真正需要多個基底資料表。我們使用此模型作為範例，化繁為簡，以便專注於聯結邏輯。或者您可以想像還有另一個關聯資料表「房間」，我們只是忽略了該表，以避免讓討論過於複雜。

![「課程-社團-學生」模型的一個版本，具有額外的共用資料表「房間」](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_model_withroom.png)

但是，最佳做法是僅在資料需要時才使用多事實關係模型。

### 關聯維度使用內部聯結

關聯維度會進行內部聯結。內部聯結會丟棄兩個資料表之間未共用的任何維度值。

- Tableau 使用附加邏輯來確保度量值不會遺失。本節僅使用維度來示範 Tableau 如何將內部聯結套用於關聯維度的基礎知識。

以下範例顯示了關聯維度如何僅傳回資料中存在的列。「警報呼叫 101」課程中沒有學生，因此該課程不會出現在結果中。Cardinal 和 Jay 不在任何課程中，因此他們不會出現在結果中。

![顯示「課程」和「學生」進行內部聯結的視覺效果，其中兩列為 Finch（「進階歌曲」、「築巢基礎知識」），兩列為 Robin（「雛鳥飛行」、「築巢基礎知識」），兩列為 Sparrow（「進階歌曲」、「築巢基礎知識」）](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_relateddims_innerjoin.png)

### 非關聯維度使用交叉聯結

非關聯維度（單獨的維度，沒有拼接維度）會進行交叉聯結。

在交叉聯結中，一個維度的每個值都會與另一個維度的每個值進行合併，即使產生的組合實際上並不存在於資料中。在此範例中，交叉聯結新增了針對「課程」與「社團」每種可能的組合的列。

![顯示「課程」和「社團」進行交叉聯結的視覺效果，其中包含針對「進階歌曲」/「警報呼叫 101」/「雛鳥飛行」/「築巢基礎知識」與「藝術」/「急救」/「雜耍」/「攝影」的每種組合的列。列架上的兩個維度膠囊上均顯示有非關聯圖示](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_unrelateddims_crossjoin.png)

識別分析中何時發生交叉聯結至關重要。儘管交叉聯結的結果資料表中有一列「進階歌曲 + 急救」，但實際上沒有學生參與這種活動組合（我們將在下一節的拼接範例中看到這一點的證明）。

為何認識到並非所有交叉聯結結果都基於資料至關重要？想像一下，您正在嘗試制定「課程」和「社團」的排程，這樣任何學生都不會發生衝突。「進階歌曲」和「急救」沒有任何學生，因此您可以忽略此結果，並同時排程該課程和社團。交叉聯結並不表示值的組合在資料中實際存在。

此外，基數較高（大量唯一值）時的交叉聯結可能會影響效能。想像一下將聯絡人中的每個電話號碼與每個電子郵件地址進行交叉聯結。這會是一次巨大的組合爆炸，也是一次可能成本高昂的作業。

### 拼接維度使用外部聯結

非關聯維度（存在拼接維度的情況下）會進行外部聯結。

在此範例中，「課程」資料表和「社團」資料表都與共用「學生」資料表關聯，但彼此不關聯，因此「課程」和「社團」欄位不關聯。新增「學生」維度可讓 Tableau 知道分析中應並列哪些來自「課程」的值和哪些來自「社團」的值。我們將這種外部聯結行為稱為_拼接_。

![視覺效果，顯示「學生」-「課程」內部聯結與「學生」-「社團」內部聯結進行外部聯結的結果。列架上的「課程」和「社團」膠囊上有一個非關聯圖示。「學生」膠囊位於標記卡的色彩屬性上，沒有非關聯圖示。並非「課程」與社團」的所有組合都會顯示，有針對「學生」和「社團」但無「課程」的列](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_stitched_outerjoin.png)

拼接與資料混合類似，會將中間結果重新匯集在一起形成整體結果。然而，與混合不同的是，拼接是外部聯結，而不是左聯結，並且不會丟棄兩側的值。全部內容為一個資料來源時，不存在主要或從屬資料來源的概念，因此兩個非關聯欄位都具有同等的優先權。

#### 中間結果會進行外部聯結

拼接欄位的外部聯結包含什麼內容？系統會依序為拼接欄位和每個非關聯欄位計算直接內部聯結，然後根據拼接維度的值將這些中間結果進行外部聯結。

**範例**

「學生」和「課程」的內部聯結...

![「學生」的三個值和「課程」的三個值的結果資料表](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_stitched_inner1.png)

...以及「學生」和「社團」的內部聯結...

![「學生」的四個值和「社團」的五個值的結果資料表](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_stitched_inner2.png)

...然後對「學生」進行外部聯結。

![「學生」的四個值、「課程」的三個值和「社團」的五個值的結果資料表](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_stitched_outerjoin.png)

### 用於保留度量的額外聯結

除了維度的聯結邏輯之外，度量還可以引入額外聯結。Tableau 中首次引入關係時，[核心原則之一是度量值不會遺失](https://www.tableau.com/zh-tw/blog/relationships-tableau-data-model)。多事實關係資料模型中也會維護該原則。

基本詳情：

- 度量值僅按關聯維度進行細分。
- 對於非關聯維度，度量值會重複。
- 若存在關聯的相關度量值，則可能會傳回將在僅維度視覺效果中丟棄的維度值。

**附註**：請記住，度量為彙總 - 按照視覺效果中維度組合設定的詳細資料層級（粒度）計算。這稱為按維度_細分_的度量。使用沒有任何維度的度量時，我們稱其為_以資料表為範圍_。這意味著度量值為完全彙總的值。一旦我們在視覺效果中使用維度，度量就會根據維度值以更精細的方式被細分。因此，分析中度量的值取決於維度的內容。

#### 關聯度量

請考慮為關聯維度**「學生」**和**「課程」**的內部聯結傳回的維度值的子集。共有_三個_「學生」值：Finch、Robin 和 Sparrow；以及_三個_「課程」值：「進階歌曲」、「築巢基礎知識」和「雛鳥飛行」。

![「學生」和「課程」之間內部聯結的結果資料表](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_inner_student_class.png)

若我們新增「課程」資料表中的**「時長」**度量，我們會看到顯示所有_四個_課程，並且「學生」中有一個值為 NULL。每個課程的**「時長」**都會在**「課程」**層級顯示。

![即使維度進行內部聯結，「學生」中也會出現 Null 值](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_related_measurefrombase.png)

若我們改為新增「學生」資料表中的**「年齡」**度量，我們會看到顯示所有_五個_學生，並且「課程」中有兩個值為 Null。結果保留了每個學生，即使他們不在課程中。每個學生的**年齡**都會在**學生**層級顯示。

![即使維度進行內部聯結，「課程」中也會出現 Null 值](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_related_measurefromshared.png)

#### 非關聯度量

對於非關聯維度值，度量值會重複。

若我們查看「課程」資料表中的**「時長」**度量和非關聯**「社團」**維度，則該度量以資料表為範圍並在**「社團」**的所有維度值中重複。

![以資料表為範圍的度量，在非關聯維度值中重複](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_unrelateddim-measure.png)

在存在拼接維度的情況下，度量既可以被細分，也可以重複。

此處，度量**「年齡」**來自「學生」資料表，並細分為學生層級。每次根據**「課程」**和**「社團」**的維度重複學生時，**「年齡」**值都會重複。

![](/tableau/current/zh-tw/server-linux/zh-tw/Img/mfr_ex_birds_unrelateddims_sharedmeasure.png)

## 疑難排解

### 使用多事實關係資料模型時的注意事項

**針對每個資料表的擷取篩選器**

多事實關係資料模型擷取的所有擷取篩選器都是針對每個資料表的（非遍佈式）。因此，即時連線和擷取連線之間的篩選結果可能會有所不同。

**列層級計算**

列層級計算只能引用共用相同上游基底資料表的欄位。也就是說，列層級計算不能跨樹狀結構執行。

**合併欄位**

合併欄位中的所有欄位必須共用上游資料表。也就是說，無法使用不同樹狀結構中的欄位建立合併欄位。

**集合**

只能使用涉及共用相同上游基底資料表之欄位的定義來建立集合。但是，在視覺效果中，標記由與用於定義集合的欄位不關聯的欄位定義時，可以從標記中使用「新增至集合」選項。若選擇「新增至集合」，Tableau 會僅將關聯欄位新增至集合定義。這與單一基底資料表資料來源中「新增至集合」的行為不同，「新增至集合」會新增定義標記的所有內容。

**驗證 INCLUDE 詳細資料層級運算式**

無法跨非關聯欄位計算 INCLUDE LOD 運算式。由於欄位之間的關聯性按工作表逐個評估，因此資料窗格或計算編輯器中的有效 LOD 運算式可能在特定視覺效果的內容中（存在非關聯維度時）變得無效。發生這種情況時，LOD 膠囊將變成紅色。可以更新 LOD 運算式，以移除非關聯欄位衝突、變更視覺效果的結構或從視覺效果中移除 LOD 運算式。

**更新已發佈資料來源**

作為最佳做法，若您打算將現有已發佈資料來源修改為多事實關係資料模型，而並非所有已連線工作簿都需要新的資料模型，則最好建立現有已發佈資料來源的副本。請勿更新資料來源的現有版本，除非其所有工作簿都需要新資料表。將修改後的資料來源發佈為新資料來源，並從中建立新工作簿。這將防止現有工作簿在不需要該功能時轉換為使用 VDS 而不是資料伺服器，從而防止潛在的效能影響。

### 已解決的問題

<table class="table--plain" style="width: 100%;"><colgroup><col style="width: 60%;"><col></colgroup><tbody><tr><td><b>已解決的問題</b></td><td><b>已修正起始時間</b></td></tr><tr><td><p><b>擷取</b></p><p><i>本機資料來源（在工作簿中）：</i>嘗試擷取多事實關係資料來源會產生「沒有這樣的資料表」錯誤。</p><p><i>已發佈資料來源：</i>擷取已發佈多事實關係資料來源似乎能成功，但可以交換欄位值。</p></td><td rowspan="3"><ul><li><a href="https://www.tableau.com/zh-tw/support/releases/online">Tableau Cloud</a>：自 7 月中旬更新起已解決。這也適用於 <a href="https://public.tableau.com/app/discover">public.tableau.com</a>。</li><li><a href="https://www.tableau.com/zh-tw/support/releases"><span class="mc-variable Variables.TabsProductDesktop variable">Tableau Desktop</span></a>：自 2024 年 7 月 24 日發佈的維護版本 2024.2.1 起已解決</li><li><a href="https://www.tableau.com/zh-tw/support/releases/server">Tableau Server</a>：自 2024 年 7 月 24 日發佈的維護版本 2024.2.1 起已解決</li></ul><p>若您仍在 <span class="mc-variable Variables.TabsProductDesktop variable">Tableau Desktop</span> 或 Tableau Server 中看到這些問題，請升級至 2024 年 7 月 24 日的版本或更高版本。</p></td></tr><tr><td><p><b>EXCLUDE 詳細資料層級運算式</b></p><p>存在非關聯欄位的情況下，應僅驗證 INCLUDE LOD。但是，EXCLUDE LOD 在相同條件下也可能被錯誤地標記為無效。</p></td></tr><tr><td><p><b>巢狀使用者計算</b></p><p>巢狀使用者計算在具有多事實關係資料模型的已發布資料來源中不可用。</p></td></tr></tbody></table>

### 已知問題

**有多個標記卡時的關聯性指標**

使用列架或欄架上的多個度量建置視覺效果時，每個度量都會取得自己的標記卡。用於確定關聯性指標（非關聯圖示、工具提示中的文字和關聯性警告對話方塊）的邏輯可能不會給出預期結果，這取決於開啟的標記卡。然而，視覺效果本身會根據每對欄位的關聯性進行正確的計算。有計劃修正此行為。

**BatchQueryProcessor**

必須啟用 BatchQueryProcessor 才能支援多事實關係資料模型。這是預期行為，目前沒有計劃修正。

**Tableau Pulse**

Tableau Pulse 可能不適用於多事實關係資料模型。可能無法建立指標定義，或建立的任何指標可能為空白。這不是預期行為，但目前尚未計劃修正。

**使用參數變更維度**

Tableau 可讓您 [使用參數交換欄位](https://help.tableau.com/current/pro/desktop/zh-tw/parameters_swap.htm)。但是，對於多事實關係，使用參數交換維度會失敗，但無提示。可以建立參數及其計算，並且可以顯示參數控制項，但參數發生變更時，欄位不會發生變更。這由評估維度關聯性的時間以及按作業順序評估參數的時間所致。

## 此區段的其他文章