QlikView - 合成键



合成键是 QlikView 用于在两个表之间存在键选择歧义时创建人工键的解决方案。当两个表具有两个或多个公共字段时,就会出现这种情况。QlikView 的内存关联创建功能会自动检测这种情况,并创建一个额外的表来保存新创建的键值。

输入数据

让我们考虑以下两个 CSV 数据文件,它们用作进一步说明的输入。

Sales:
ProductID,ProductCategory,Country,SaleAmount
1,Outdoor Recreation,Italy,4579
2,Clothing,USA,4125
3,Costumes & Accessories,South Korea,6521

Product:
ProductID, Country
3,Brazil
3,China
2,Korea
1,USA

加载脚本

我们使用脚本编辑器加载上述输入数据,该编辑器可以通过按Ctrl+E来调用。选择表格文件选项并浏览输入文件。

synthetic_key_load_script

数据模型

接下来,我们使用表格查看器的菜单命令(Ctrl+T)查看数据模型。出现以下屏幕,显示创建了第三个表来提供合成键的值,因为这两个表都具有 ProductID 和 Country 作为匹配键。

synthetic_key_data_model

合成键的影响

合成键表明所使用的数据模型存在缺陷。它们不会对数据的正确性或报表的性能造成任何问题。如果大型数据模型中有一两个合成键实例,一切都会正常运行。但是,如果我们有太多合成键,则意味着需要重新设计数据模型。

广告