解决间接关系/多对多表:如何在icCube中解决这个问题?

时间:2018-02-09 20:34:20

标签: iccube

我需要在icCube中创建一个子维度,例如:

我有两个维度,维度学生和维度本地化。维度Student具有来自本地化维度的外键和具有学生维度的事实表连接。另外,我想在学生维度中使用本地化维度的属性创建层次结构。

具有本地化作为子维度的模型示例:

Example

1 个答案:

答案 0 :(得分:0)

您有两种选择。

一个维度/两个层次结构

您将创建一个表,该表是学生和本地化的交叉连接的结果(在即将到来的icCube版本中,我们是一个连接视图)。你将使用它 用于创建具有两个层次结构学生和本地化的维度学生的表。检查Exists以查看含义(通常不是很重要)。

有了这个,你只需要将学生与事实联系起来,因为事实和本地化之间的关系是通过学生解决的(它也处理一对多)。

二维

您可以创建两个维度。一个用于学生,另一个用于本地化。两者都是独立的。

要将事实绑定到位置,我们需要使用可以直接在事实中定义的中间映射结构(它被称为“桥接'”,请参阅时间)。桥表将是STUDENT,ID_STUDENT,ID,ID_LOCALIZATION,这有助于在ID_STUDENT和ID_LOCALIZATION(可能是多对多)之间构建映射

enter image description here

希望有所帮助