合成鍵

當兩個或更多內部表格有兩個或更多的共同欄位,這就意味著有複合索引鍵關係。QlikView 透過自動建立合成鍵來處理此項目。這些索引鍵為代表複合索引鍵所有發生組合的匿名欄位。

如果您在載入資料時收到有關合成鍵的警告,則建議您在表格檢視器中檢閱資料結構。您應該詢問自己資料模型是否正確。有時,由於指令碼中存在錯誤而使用合成鍵。

多個合成鍵通常是不正確資料模型的徵兆,但並非必然。然而,不正確資料模型的確切訊號是您是否有基於其他合成鍵的合成鍵。

警告: 當合成鍵的數目增加時,根據資料數量、表格結構和其他因素,QlikView 不一定能夠妥善地處理它們,最終可能會使用大量的時間和/或資金。在此情況下,您需要透過移除所有合成鍵,重做您的指令碼。

處理合成鍵

如果您需要避免合成鍵,則有許多方法在載入指令碼中解決此問題。

  • 檢查是否只有邏輯上連結的兩個表格的欄位用作索引鍵。

    • 「註解」、「備註」和「描述」等欄位可能存在於數個表格中,但不相關,因此不得用作索引鍵。
    • 「日期」、「公司」和「名稱」等欄位可能存在於數個表格中,且具有相同值,但是仍具有不同角色 (訂單日期/出貨日期、客戶公司/供應商公司)。在此類情況下,它們不得用作索引鍵。
  • 確保不會使用冗餘欄位,僅連接必要欄位。例如,如果日期用作索引鍵,請確定不要從一個以上的內部表格載入相同日期的 year、month 或 day_of_month。

  • 必要的話,形成自有的非複合索引鍵,通常是在 AutoNumber 指令碼函數內使用字串串連。