通过使用多个表,可使数据更有趣,并且与使用这些数据的数据透视表和报表更相关。 当您通过 Power Pivot 加载项处理数据时,可以使用关系图视图创建和管理导入的表之间的关系。
创建表关系要求每个表都具有包含匹配值的列。 例如,如果将“客户”和“订单”相关联,则每个订单记录都需要具有解析为单个客户的客户代码或 ID。
-
在 Power Pivot 窗口中,单击“关系图视图”。 “数据视图”电子表格布局更改为可视图表布局,并基于其关系自动组织表。
-
右键单击某个表关系图,然后单击“创建关系”。 将打开“创建关系”对话框。
-
如果该表来自某一关系数据库,则会预先选择某一列。 如果未预先选择任何列,则从包含将用于关联各表中的行的数据的表中选择一列。
-
对于“相关查阅表格”,选择至少有一列数据与您刚为“表”选择的表相关的表。
-
对于“列”,选择包含与“相关查阅列”有关的数据的列。
-
单击“创建”。
注意: 尽管 Excel 会检查每列之间的数据类型是否匹配,但它不会验证列是否实际包含匹配数据,并且甚至在值不对应时也将会创建关系。 若要检查该关系是否有效,请创建包含来自两个表的字段的数据透视表。 如果数据看起来是错误的(例如,单元格是空的或相同值在往下的每一行重复),则您将需要选择不同的字段并且可能要选择不同的表。
查找相关列
当数据模型包含大量表时,或者表包含大量字段时,确定要在表关系中使用的列可能很难。 查找相关列的一个方法就是在模型中搜索它。 如果您已经知道要使用哪个列(或键),但不确定其他表是否包含该列,则此方法很有用。 例如,数据仓库中的事实数据表通常包含许多键。 您可以从该表中的某个键开始,然后搜索模型中是否存在包含相同键的其他表。 包含相应键的任何表都可以用于表关系中。
-
在 Power Pivot 窗口中,单击“查找”。
-
在“查找内容”中,输入键或列作为搜索词。 搜索词必须包含字段名称。 不能搜索列的特征或其包含的数据类型。
-
单击“查找元数据时显示隐藏字段”框。 如果某个键在模型中被隐藏起来以便减少混乱,您可能在关系图视图中看不到该键。
-
单击“查找下一处”。 如果找到了匹配项,则该列将在表关系图中突出显示。 现在您知道哪个表包含可用于表关系的匹配列。
更改活动关系
表可以具有多种关系,但是,只有一个关系可以是活动关系。 默认情况下,活动关系用在 DAX 计算和透视报表导航中。 非活动关系可通过 USERELATIONSHIP 函数用在 DAX 计算中。 有关详细信息,请参阅 USERELATIONSHIP 函数 (DAX)。
如果以此方式导入了表(其中,在原始数据源中为该表定义了多个关系),或者,如果您手动创建附加关系以便支持 DAX 计算,则存在多个关系。
若要更改该活动关系,请提升非活动关系。 当前活动关系将自动变为非活动关系。
-
指向表之间的关系线。 非活动关系显示为虚线。 (关系处于非活动状态,因为两列之间已存在间接关系。)
-
右键单击该关系线,然后单击“标记为活动状态”。
注意: 如果不存在与这两个表关联的其他关系,则您只能激活该关系。 如果这两个表已关联,但您想要更改它们的关联方式,则必须将当前关系标记为非活动状态,然后再激活一个新的关系。
在关系图视图中排列表
若要在屏幕上看到所有表,请在关系图视图的右上角中单击“适应屏幕”图标。
若要组织成合适的视图,请使用“拖动以缩放”控件、Minimap,并且将表拖到您喜欢的布局中。 还可以使用滚动条和鼠标滚轮来滚动屏幕。