資料模型關係

已完成

在傳統的 Excel 報告中,使用者通常使用 VLOOKUP()、HLOOKUP()或 INDEX/MATCH()函數將多個表中的不同欄位引入主表。 此外,他們將用條件計算來補充這些查找,例如 SUMIFS()、AVERAGEIFS()和 SUBTOTAL()等。

數據模型通過實現表之間的關係消除了多次查找的需要。 關係使現代分析師能夠快速對多個表和大量數據執行分析。

關係設定

在建立連接或導入數據之前,請確保驗證報表的當前設置。 此驗證可能會在設置過程中節省您的時間,或説明您避免更多工作來刪除不準確的自動檢測關係。

轉到 檔案 > 選項和設置 > 選項 > [當前檔]數據載入 > 關係

轉到檔;選項和設置;選項;當前文件數據載入;關係。

如果選取中「 自動檢測新關係 」複選框, Power BI 則在將表載入到 Power Query模型中後,將嘗試識別和創建表之間的關係。 此過程基於表名和列名之間的相似性,但它並不完美。

關係介紹

可以使用連接兩個表的線條來顯示關係。 將滑鼠懸停在線條上時,將概述建立關係所基於的兩個相應欄位。 以下示例顯示 “引號”表中的“CustID”字段與“客戶”表中的 “ID 字段對齊。

顯示引號表中 CUSTID 欄位的範例的螢幕截圖。

沿線的指示器可説明查看者瞭解 基數交叉篩檢程式方向以及關係是 活動 (實線)還是 非活動 (虛線)。 這個概念將在後面更詳細地討論。

創建這些關係既快速又簡單,使用許多不同的方法具有不同級別的詳細資訊或簡單性。

創建關係的最簡單方法是轉到 「數據模型 」或 「關係圖 」檢視,然後將欄位從一個表拖動到另一個表上的欄位。 數據模型將解釋兩個字段之間的關係,如果合理明顯,將顯示該關係。

創建關係的另一種更詳細的方法是通過「 管理關係」 視窗。 您可以在“開始”選項卡上的 Power BI “模型 ”視圖中訪問此視窗,也可以在 Excel 中的“ 數據 ”選項卡上通過“關係” 按鈕訪問此視窗

選擇其中一個按鈕時的初始檢視是數據模型中所有關係的摘要。

“管理關係”視窗的屏幕截圖。

便條

Excel 中的“ 關係 ”視窗包含相同的資訊以及相同的選項,例如“自動檢測 功能。

在“管理關係 視窗中,可以選擇 “編輯 現有關係”或“創建新 關係”。 這兩個選項都將轉到同一關係定義精靈。

要以這種方式定義關係,您需要從下拉清單中選擇兩個表,然後突出顯示要在關係中連結的相應列/欄位。 嚮導將自動確定關係的基數和交叉篩選方向。 它還為您提供了使關係處於活動狀態的選項。

編輯關係視窗的屏幕截圖。

便條

您可以使用多個列來定義關係, 方法是按住 Ctrl 鍵並選擇欄位。 每個圖示旁邊將顯示一個數值,以顯示它們如何相互對齊。

基數和交叉篩選方向是複雜的設置,在性能、功能和易用性方面會對數據模型產生影響。

基數

基數 設置反映了數據的方向性以及表之間的關係。 此關係可以是一對多 (1 到 *)、一對一 (1 到 1) 或多對多 (* 到 *)。 這些定義描述在每個表中可以找到多少個一種類型的值。

一對多

在一對多關係中,一個表中的唯一值將在另一個表中多次找到。 這種關係最常用於數據模型。 例如,具有與每個產品相關的多個屬性的產品表,該屬性綁定到每個產品具有多個記錄的銷售表。

一對一

在一對一關係中,值在兩個表中都有一個唯一條目。 一對一關係並不常見,作者通常會將一對一關係合併到單個表中,以便在數據模型中使用。

多對多

在多對多關係中,從匹配列中獲取的唯一值將在兩個表中都有多個條目。 多對多關係需要仔細考慮和先進的技術進行適當的管理。 開始時 Power BI,應避免多對多關係,因為它們偶爾會產生有關度量值的不良結果。

交叉過濾方向

交叉 篩選器 設置告知數據模型篩選器如何在兩個表之間傳播。 在「模型 」檢視中,線中間的箭頭表示交叉篩檢程式方向。

活動和非活動

您可能希望定期在表之間設置多個關係 (例如, 銷售表中的“訂單日期 ”和 “發貨日期 ”字段以及日曆表中的“ 日期 ”字段)。 一次只允許兩個表之間有一個活動關係,但您可以設置非活動關係以在更高級的數據分析表達式 (DAX) 度量中使用。