# 瞭解和解決循環參照

如果資料結構中存在循環參照 (「迴圈」)，這表示表格的關聯方式會讓兩個欄位之間有不只一個的關聯路徑。

應盡可能避免此類型的資料結構，因為可能會導致資料解譯上的語意模糊。

含有循環參照的三個表格，因為兩個欄位之間有多個關聯路徑。

含有循環參照的三個表格，因為兩個欄位之間有多個關聯路徑。

含有循環參照的三個表格，因為兩個欄位之間有多個關聯路徑。 ![使用循環參照的三個表格。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/ex_gen_CircularTables.png)

Qlik Sense 解決循環參照問題的方法是以鬆耦合表格來斷開迴圈。當 Qlik Sense 執行載入指令碼時，若發現循環資料結構，就會顯示警告對話方塊，並將一或多個表格設為鬆耦合。Qlik Sense 一般會嘗試鬆開迴圈中最長的表格，因為這通常是交易表格，一般為應該鬆開的表格。在資料模型檢視器中，鬆耦合表格會以連到其他表格的紅色點狀連結來表示。

範例：

資料從包含下列項目的三個表格載入：

* 幾支足球國家代表隊的隊名
* 幾個城市中的足球俱樂部
* 幾個歐洲國家的城市

Excel 中來源資料表格的檢視。

Excel 中來源資料表格的檢視。

Excel 中來源資料表格的檢視。 ![Excel 中的表格。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/ex_gen_CircularRefData.png)

這個資料結構並不太完善，因為欄位名稱 Team 用於兩個不同的用途：國家代表隊和地方俱樂部。表格中的資料會造成不合理的邏輯情況。

將表格載入到 Qlik Sense 時，Qlik Sense 會決定哪些資料連線最不重要，並且將此表格鬆綁。

開啟資料模型檢視器以查看 Qlik Sense 如何解譯資料連線的關聯：

循環參照的檢視以紅色虛線註明。

循環參照的檢視以紅色虛線註明。

循環參照的檢視以紅色虛線註明。 ![Circular references between tables.](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/ex_gen_Circular.png)

城市和其所屬國家的表格現在鬆耦合於不同國家代表隊的表格，並鬆耦合於不同城市之地方俱樂部的表格。

## 解決循環參照

循環參照發生時，您需要對於相同名稱的欄位指派一個唯一的名稱，以編輯資料載入指令碼。

請執行下列動作：

1. 開啟資料載入編輯器。

2. 對於其中一個重複的欄位名稱，編輯 LOAD 陳述式。

   在此範例中，記錄地方俱樂部和所在城市之表格的 LOAD 陳述式會包含 Team 的新名稱，例如 LocalClub。更新的 LOAD 陳述式如下：

   `LOAD City, Team as LocalClub`

1) 按一下工具列中的 the 播放 icon，重新載入應用程式中的資料。

邏輯現在適用於所有的表格。在此範例中，選取 Germany 時，國家代表隊、德國的城市和各個城市中的地方俱樂部將相互產生關聯：

![Sheet with four tables.](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/ex_gen_CircularSolved.png)

您開啟資料模型檢視器時，會看見鬆耦合連線已經取代成一般連線：

![Three tables with regular connections in the Data model viewer.](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/ex_gen_CircularSolved_dmv.png)

相關學習內容：

* [資料模型檢視器簡介](https://help.qlik.com/lnk/Intro_Data_Model_Viewer_QS)

## 瞭解更多資訊

* [資料模型檢視器簡介](https://help.qlik.com/lnk/Intro_Data_Model_Viewer_QS)