MicroStrategy ONE
定义实体之间关系的方法
实体关系是实体之间的关联,用于指定实体的连接方式。实体关系定义如何联接和使用表格和列,以及哪些表格和其他表格相关。如果没有关系,在数据之间将没有交互,因此就不会有逻辑结构。关系通过根据业务规则提供实体的逻辑关联为数据赋予含义。
每个实体关系具有两个部分 - 父项和子项。子项必须始终具有父项并且父项可具有多个子项。父实体的逻辑级别比子实体更高。
在“年”和“季度”之间的关系中,“年”是父实体,“季度”为子实体。
关系类型通过相关实体中存在的实体元素定义。在下面描述了每个类型:
-
一对一:父实体中的每个元素和子实体中的一个和唯一的一个元素对应,并且每个子实体和父实体中的一个和唯一的一个元素对应。
市民具有唯一的纳税人 ID,并且每个纳税人 ID 也只能分配给一个市民。
-
一对多:父实体中的每个元素和子实体中的一个或多个元素对应,并且每个子实体和父实体中的一个和唯一的一个元素对应。
年和季度之间存在一对多的关系。一年有许多季度,但是特定季度只能在一年中。这种情况假设季度以相应的年份定义,例如 2017 年第 4 季度、2018 年第 1 季度等。
-
多对多:父实体中的每个元素可具有多个子项,并且子实体中的每个子元素可具有多个父项。
在银行业中,客户和帐户就是多对多关系的示例。一个客户可具有多个帐户,并且每个帐户可以和多个客户关联,例如联合支票帐户的情况。
默认情况下,新关系由用户管理。当您在“定义关系”对话框中修改关系时,用户管理的关系将变为自动管理。
用户管理关系和自动管理关系的区别在于,无效的自动管理关系会在数据集发布后自动删除,而用户管理关系则不会。
在此示例中,YEAR 和 MONTH 之间的一对一关系无效。发布数据集后,关系右侧会出现一个错误图标。
由于新关系默认由用户管理,因此点击 全部转换 并选择 自动管理。单击保存。
再次编辑数据集,注意无效关系现已删除,因为关系已更改为自动管理。
定义实体之间的关系
- 创建一个空白 dossier 或打开一个现有的。
-
选择添加数据 > 新数据,将数据导入新的数据集。
或
在数据集面板中,点击 更多的 在数据集名称旁并选择编辑数据集来将数据添加至数据集。预览对话框打开。单击添加新表。
这时“数据源”对话框将打开。
- 按照您的数据源类型,选择您要导入的数据。
- 选择要导入的数据后,单击准备数据打开“预览”对话框。
在顶部窗格中,单击您要修改的表的下拉箭头并选择定义关系。“定义关系”对话框打开。
- 单击添加新关系 添加新的空关系。
- 从中选择父属性 父属性 下拉列表以选择新的关系。父实体的级别比子实体更高。
- 从子实体下拉列表中选择子实体。
从关系下拉列表中选择关系类型。默认情况下,关系定义为一对多。
- 选择一对一以确保父实体中的每个元素仅和子实体中的一个元素对应。每个子实体仅和父实体中的一个元素对应。
- 选择一对多以确保父实体中的每个元素仅和子实体中的一个或多个元素对应。每个子实体仅和父实体中的一个元素对应。
- 选择多对多以确保父实体中的每个元素可具有多个子项。子实体中的每个子元素可具有多个父项。
可以通过更改父实体、子实体以及关系选项来编辑现有关系。修改关系会将其转换为自动管理关系,并将切换按钮从 到 。
- 选择切换按钮可将关系转换为用户管理或自动管理。
- 您可以通过从中选择适当的选项将所有关系转换为用户或自动管理 全部转换 落下。
- 要删除关系,请选择相应的 在右边 关系 落下。
- 单击保存。